table 6.0.8 → 6.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (106) hide show
  1. package/README.md +53 -1
  2. package/dist/src/alignString.js +64 -0
  3. package/dist/src/alignTableData.js +21 -0
  4. package/dist/src/calculateCellHeight.js +17 -0
  5. package/dist/src/calculateCellWidthIndex.js +17 -0
  6. package/dist/src/calculateMaximumColumnWidthIndex.js +25 -0
  7. package/dist/src/calculateRowHeightIndex.js +30 -0
  8. package/dist/src/createStream.js +74 -0
  9. package/dist/src/drawBorder.js +55 -0
  10. package/dist/src/drawHorizontalContent.js +19 -0
  11. package/dist/src/drawRow.js +17 -0
  12. package/dist/src/drawTable.js +38 -0
  13. package/dist/src/getBorderCharacters.js +83 -0
  14. package/dist/{index.js.flow → src/index.d.ts} +2 -6
  15. package/dist/src/index.js +24 -0
  16. package/dist/src/makeConfig.js +59 -0
  17. package/dist/src/makeStreamConfig.js +60 -0
  18. package/dist/src/mapDataUsingRowHeightIndex.js +27 -0
  19. package/dist/src/padTableData.js +11 -0
  20. package/dist/src/stringifyTableData.js +8 -0
  21. package/dist/src/table.js +28 -0
  22. package/dist/src/truncateTableData.js +20 -0
  23. package/dist/src/types/api.d.ts +99 -0
  24. package/dist/src/types/api.js +3 -0
  25. package/dist/src/types/internal.js +3 -0
  26. package/dist/src/validateConfig.js +27 -0
  27. package/dist/src/validateTableData.js +29 -0
  28. package/dist/{validators.js → src/validators.js} +54 -14
  29. package/dist/src/wrapCell.js +33 -0
  30. package/dist/src/wrapString.js +25 -0
  31. package/dist/src/wrapWord.js +29 -0
  32. package/package.json +33 -26
  33. package/dist/alignString.js +0 -108
  34. package/dist/alignString.js.flow +0 -97
  35. package/dist/alignString.js.map +0 -1
  36. package/dist/alignTableData.js +0 -35
  37. package/dist/alignTableData.js.flow +0 -21
  38. package/dist/alignTableData.js.map +0 -1
  39. package/dist/calculateCellHeight.js +0 -38
  40. package/dist/calculateCellHeight.js.flow +0 -24
  41. package/dist/calculateCellHeight.js.map +0 -1
  42. package/dist/calculateCellWidthIndex.js +0 -28
  43. package/dist/calculateCellWidthIndex.js.flow +0 -17
  44. package/dist/calculateCellWidthIndex.js.map +0 -1
  45. package/dist/calculateMaximumColumnWidthIndex.js +0 -37
  46. package/dist/calculateMaximumColumnWidthIndex.js.flow +0 -27
  47. package/dist/calculateMaximumColumnWidthIndex.js.map +0 -1
  48. package/dist/calculateRowHeightIndex.js +0 -46
  49. package/dist/calculateRowHeightIndex.js.flow +0 -36
  50. package/dist/calculateRowHeightIndex.js.map +0 -1
  51. package/dist/createStream.js +0 -125
  52. package/dist/createStream.js.flow +0 -125
  53. package/dist/createStream.js.map +0 -1
  54. package/dist/drawBorder.js +0 -110
  55. package/dist/drawBorder.js.flow +0 -101
  56. package/dist/drawBorder.js.map +0 -1
  57. package/dist/drawRow.js +0 -26
  58. package/dist/drawRow.js.flow +0 -15
  59. package/dist/drawRow.js.map +0 -1
  60. package/dist/drawTable.js +0 -59
  61. package/dist/drawTable.js.flow +0 -53
  62. package/dist/drawTable.js.map +0 -1
  63. package/dist/getBorderCharacters.js +0 -119
  64. package/dist/getBorderCharacters.js.flow +0 -120
  65. package/dist/getBorderCharacters.js.map +0 -1
  66. package/dist/index.js +0 -32
  67. package/dist/index.js.map +0 -1
  68. package/dist/makeConfig.js +0 -92
  69. package/dist/makeConfig.js.flow +0 -76
  70. package/dist/makeConfig.js.map +0 -1
  71. package/dist/makeStreamConfig.js +0 -98
  72. package/dist/makeStreamConfig.js.flow +0 -83
  73. package/dist/makeStreamConfig.js.map +0 -1
  74. package/dist/mapDataUsingRowHeightIndex.js +0 -42
  75. package/dist/mapDataUsingRowHeightIndex.js.flow +0 -34
  76. package/dist/mapDataUsingRowHeightIndex.js.map +0 -1
  77. package/dist/padTableData.js +0 -24
  78. package/dist/padTableData.js.flow +0 -14
  79. package/dist/padTableData.js.map +0 -1
  80. package/dist/schemas/config.json +0 -23
  81. package/dist/schemas/shared.json +0 -98
  82. package/dist/schemas/streamConfig.json +0 -20
  83. package/dist/stringifyTableData.js +0 -22
  84. package/dist/stringifyTableData.js.flow +0 -11
  85. package/dist/stringifyTableData.js.map +0 -1
  86. package/dist/table.js +0 -110
  87. package/dist/table.js.flow +0 -96
  88. package/dist/table.js.map +0 -1
  89. package/dist/truncateTableData.js +0 -30
  90. package/dist/truncateTableData.js.flow +0 -17
  91. package/dist/truncateTableData.js.map +0 -1
  92. package/dist/validateConfig.js +0 -41
  93. package/dist/validateConfig.js.flow +0 -27
  94. package/dist/validateConfig.js.map +0 -1
  95. package/dist/validateTableData.js +0 -55
  96. package/dist/validateTableData.js.flow +0 -44
  97. package/dist/validateTableData.js.map +0 -1
  98. package/dist/wrapCell.js +0 -48
  99. package/dist/wrapCell.js.flow +0 -35
  100. package/dist/wrapCell.js.map +0 -1
  101. package/dist/wrapString.js +0 -40
  102. package/dist/wrapString.js.flow +0 -29
  103. package/dist/wrapString.js.map +0 -1
  104. package/dist/wrapWord.js +0 -47
  105. package/dist/wrapWord.js.flow +0 -39
  106. package/dist/wrapWord.js.map +0 -1
@@ -1,119 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
-
8
- /* eslint-disable sort-keys-fix/sort-keys-fix */
9
-
10
- /**
11
- * @typedef border
12
- * @property {string} topBody
13
- * @property {string} topJoin
14
- * @property {string} topLeft
15
- * @property {string} topRight
16
- * @property {string} bottomBody
17
- * @property {string} bottomJoin
18
- * @property {string} bottomLeft
19
- * @property {string} bottomRight
20
- * @property {string} bodyLeft
21
- * @property {string} bodyRight
22
- * @property {string} bodyJoin
23
- * @property {string} joinBody
24
- * @property {string} joinLeft
25
- * @property {string} joinRight
26
- * @property {string} joinJoin
27
- */
28
-
29
- /**
30
- * @param {string} name
31
- * @returns {border}
32
- */
33
- const getBorderCharacters = name => {
34
- if (name === 'honeywell') {
35
- return {
36
- topBody: '═',
37
- topJoin: '╤',
38
- topLeft: '╔',
39
- topRight: '╗',
40
- bottomBody: '═',
41
- bottomJoin: '╧',
42
- bottomLeft: '╚',
43
- bottomRight: '╝',
44
- bodyLeft: '║',
45
- bodyRight: '║',
46
- bodyJoin: '│',
47
- joinBody: '─',
48
- joinLeft: '╟',
49
- joinRight: '╢',
50
- joinJoin: '┼'
51
- };
52
- }
53
-
54
- if (name === 'norc') {
55
- return {
56
- topBody: '─',
57
- topJoin: '┬',
58
- topLeft: '┌',
59
- topRight: '┐',
60
- bottomBody: '─',
61
- bottomJoin: '┴',
62
- bottomLeft: '└',
63
- bottomRight: '┘',
64
- bodyLeft: '│',
65
- bodyRight: '│',
66
- bodyJoin: '│',
67
- joinBody: '─',
68
- joinLeft: '├',
69
- joinRight: '┤',
70
- joinJoin: '┼'
71
- };
72
- }
73
-
74
- if (name === 'ramac') {
75
- return {
76
- topBody: '-',
77
- topJoin: '+',
78
- topLeft: '+',
79
- topRight: '+',
80
- bottomBody: '-',
81
- bottomJoin: '+',
82
- bottomLeft: '+',
83
- bottomRight: '+',
84
- bodyLeft: '|',
85
- bodyRight: '|',
86
- bodyJoin: '|',
87
- joinBody: '-',
88
- joinLeft: '|',
89
- joinRight: '|',
90
- joinJoin: '|'
91
- };
92
- }
93
-
94
- if (name === 'void') {
95
- return {
96
- topBody: '',
97
- topJoin: '',
98
- topLeft: '',
99
- topRight: '',
100
- bottomBody: '',
101
- bottomJoin: '',
102
- bottomLeft: '',
103
- bottomRight: '',
104
- bodyLeft: '',
105
- bodyRight: '',
106
- bodyJoin: '',
107
- joinBody: '',
108
- joinLeft: '',
109
- joinRight: '',
110
- joinJoin: ''
111
- };
112
- }
113
-
114
- throw new Error('Unknown border template "' + name + '".');
115
- };
116
-
117
- var _default = getBorderCharacters;
118
- exports.default = _default;
119
- //# sourceMappingURL=getBorderCharacters.js.map
@@ -1,120 +0,0 @@
1
- /* eslint-disable sort-keys-fix/sort-keys-fix */
2
-
3
- /**
4
- * @typedef border
5
- * @property {string} topBody
6
- * @property {string} topJoin
7
- * @property {string} topLeft
8
- * @property {string} topRight
9
- * @property {string} bottomBody
10
- * @property {string} bottomJoin
11
- * @property {string} bottomLeft
12
- * @property {string} bottomRight
13
- * @property {string} bodyLeft
14
- * @property {string} bodyRight
15
- * @property {string} bodyJoin
16
- * @property {string} joinBody
17
- * @property {string} joinLeft
18
- * @property {string} joinRight
19
- * @property {string} joinJoin
20
- */
21
-
22
- /**
23
- * @param {string} name
24
- * @returns {border}
25
- */
26
- export default (name) => {
27
- if (name === 'honeywell') {
28
- return {
29
- topBody: '═',
30
- topJoin: '╤',
31
- topLeft: '╔',
32
- topRight: '╗',
33
-
34
- bottomBody: '═',
35
- bottomJoin: '╧',
36
- bottomLeft: '╚',
37
- bottomRight: '╝',
38
-
39
- bodyLeft: '║',
40
- bodyRight: '║',
41
- bodyJoin: '│',
42
-
43
- joinBody: '─',
44
- joinLeft: '╟',
45
- joinRight: '╢',
46
- joinJoin: '┼',
47
- };
48
- }
49
-
50
- if (name === 'norc') {
51
- return {
52
- topBody: '─',
53
- topJoin: '┬',
54
- topLeft: '┌',
55
- topRight: '┐',
56
-
57
- bottomBody: '─',
58
- bottomJoin: '┴',
59
- bottomLeft: '└',
60
- bottomRight: '┘',
61
-
62
- bodyLeft: '│',
63
- bodyRight: '│',
64
- bodyJoin: '│',
65
-
66
- joinBody: '─',
67
- joinLeft: '├',
68
- joinRight: '┤',
69
- joinJoin: '┼',
70
- };
71
- }
72
-
73
- if (name === 'ramac') {
74
- return {
75
- topBody: '-',
76
- topJoin: '+',
77
- topLeft: '+',
78
- topRight: '+',
79
-
80
- bottomBody: '-',
81
- bottomJoin: '+',
82
- bottomLeft: '+',
83
- bottomRight: '+',
84
-
85
- bodyLeft: '|',
86
- bodyRight: '|',
87
- bodyJoin: '|',
88
-
89
- joinBody: '-',
90
- joinLeft: '|',
91
- joinRight: '|',
92
- joinJoin: '|',
93
- };
94
- }
95
-
96
- if (name === 'void') {
97
- return {
98
- topBody: '',
99
- topJoin: '',
100
- topLeft: '',
101
- topRight: '',
102
-
103
- bottomBody: '',
104
- bottomJoin: '',
105
- bottomLeft: '',
106
- bottomRight: '',
107
-
108
- bodyLeft: '',
109
- bodyRight: '',
110
- bodyJoin: '',
111
-
112
- joinBody: '',
113
- joinLeft: '',
114
- joinRight: '',
115
- joinJoin: '',
116
- };
117
- }
118
-
119
- throw new Error('Unknown border template "' + name + '".');
120
- };
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/getBorderCharacters.js"],"names":["name","topBody","topJoin","topLeft","topRight","bottomBody","bottomJoin","bottomLeft","bottomRight","bodyLeft","bodyRight","bodyJoin","joinBody","joinLeft","joinRight","joinJoin","Error"],"mappings":"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","sourcesContent":["/* eslint-disable sort-keys-fix/sort-keys-fix */\n\n/**\n * @typedef border\n * @property {string} topBody\n * @property {string} topJoin\n * @property {string} topLeft\n * @property {string} topRight\n * @property {string} bottomBody\n * @property {string} bottomJoin\n * @property {string} bottomLeft\n * @property {string} bottomRight\n * @property {string} bodyLeft\n * @property {string} bodyRight\n * @property {string} bodyJoin\n * @property {string} joinBody\n * @property {string} joinLeft\n * @property {string} joinRight\n * @property {string} joinJoin\n */\n\n/**\n * @param {string} name\n * @returns {border}\n */\nexport default (name) => {\n if (name === 'honeywell') {\n return {\n topBody: '═',\n topJoin: '╤',\n topLeft: '╔',\n topRight: '╗',\n\n bottomBody: '═',\n bottomJoin: '╧',\n bottomLeft: '╚',\n bottomRight: '╝',\n\n bodyLeft: '║',\n bodyRight: '║',\n bodyJoin: '│',\n\n joinBody: '─',\n joinLeft: '╟',\n joinRight: '╢',\n joinJoin: '┼',\n };\n }\n\n if (name === 'norc') {\n return {\n topBody: '─',\n topJoin: '┬',\n topLeft: '┌',\n topRight: '┐',\n\n bottomBody: '─',\n bottomJoin: '┴',\n bottomLeft: '└',\n bottomRight: '┘',\n\n bodyLeft: '│',\n bodyRight: '│',\n bodyJoin: '│',\n\n joinBody: '─',\n joinLeft: '├',\n joinRight: '┤',\n joinJoin: '┼',\n };\n }\n\n if (name === 'ramac') {\n return {\n topBody: '-',\n topJoin: '+',\n topLeft: '+',\n topRight: '+',\n\n bottomBody: '-',\n bottomJoin: '+',\n bottomLeft: '+',\n bottomRight: '+',\n\n bodyLeft: '|',\n bodyRight: '|',\n bodyJoin: '|',\n\n joinBody: '-',\n joinLeft: '|',\n joinRight: '|',\n joinJoin: '|',\n };\n }\n\n if (name === 'void') {\n return {\n topBody: '',\n topJoin: '',\n topLeft: '',\n topRight: '',\n\n bottomBody: '',\n bottomJoin: '',\n bottomLeft: '',\n bottomRight: '',\n\n bodyLeft: '',\n bodyRight: '',\n bodyJoin: '',\n\n joinBody: '',\n joinLeft: '',\n joinRight: '',\n joinJoin: '',\n };\n }\n\n throw new Error('Unknown border template \"' + name + '\".');\n};\n"],"file":"getBorderCharacters.js"}
package/dist/index.js DELETED
@@ -1,32 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- Object.defineProperty(exports, "createStream", {
7
- enumerable: true,
8
- get: function () {
9
- return _createStream.default;
10
- }
11
- });
12
- Object.defineProperty(exports, "getBorderCharacters", {
13
- enumerable: true,
14
- get: function () {
15
- return _getBorderCharacters.default;
16
- }
17
- });
18
- Object.defineProperty(exports, "table", {
19
- enumerable: true,
20
- get: function () {
21
- return _table.default;
22
- }
23
- });
24
-
25
- var _createStream = _interopRequireDefault(require("./createStream"));
26
-
27
- var _getBorderCharacters = _interopRequireDefault(require("./getBorderCharacters"));
28
-
29
- var _table = _interopRequireDefault(require("./table"));
30
-
31
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
32
- //# sourceMappingURL=index.js.map
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/index.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA","sourcesContent":["import createStream from './createStream';\nimport getBorderCharacters from './getBorderCharacters';\nimport table from './table';\n\nexport {\n table,\n createStream,\n getBorderCharacters,\n};\n"],"file":"index.js"}
@@ -1,92 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
-
8
- var _lodash = _interopRequireDefault(require("lodash.clonedeep"));
9
-
10
- var _calculateMaximumColumnWidthIndex = _interopRequireDefault(require("./calculateMaximumColumnWidthIndex"));
11
-
12
- var _getBorderCharacters = _interopRequireDefault(require("./getBorderCharacters"));
13
-
14
- var _validateConfig = _interopRequireDefault(require("./validateConfig"));
15
-
16
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
-
18
- /**
19
- * Merges user provided border characters with the default border ("honeywell") characters.
20
- *
21
- * @param {object} border
22
- * @returns {object}
23
- */
24
- const makeBorder = (border = {}) => {
25
- return Object.assign({}, (0, _getBorderCharacters.default)('honeywell'), border);
26
- };
27
- /**
28
- * Creates a configuration for every column using default
29
- * values for the missing configuration properties.
30
- *
31
- * @param {Array[]} rows
32
- * @param {object} columns
33
- * @param {object} columnDefault
34
- * @returns {object}
35
- */
36
-
37
-
38
- const makeColumns = (rows, columns = {}, columnDefault = {}) => {
39
- const maximumColumnWidthIndex = (0, _calculateMaximumColumnWidthIndex.default)(rows);
40
-
41
- for (let index = 0; index < rows[0].length; index++) {
42
- if (typeof columns[index] === 'undefined') {
43
- columns[index] = {};
44
- }
45
-
46
- columns[index] = Object.assign({
47
- alignment: 'left',
48
- paddingLeft: 1,
49
- paddingRight: 1,
50
- truncate: Number.POSITIVE_INFINITY,
51
- width: maximumColumnWidthIndex[index],
52
- wrapWord: false
53
- }, columnDefault, columns[index]);
54
- }
55
-
56
- return columns;
57
- };
58
- /**
59
- * Makes a new configuration object out of the userConfig object
60
- * using default values for the missing configuration properties.
61
- *
62
- * @param {Array[]} rows
63
- * @param {object} userConfig
64
- * @returns {object}
65
- */
66
-
67
-
68
- const makeConfig = (rows, userConfig = {}) => {
69
- (0, _validateConfig.default)('config.json', userConfig);
70
- const config = (0, _lodash.default)(userConfig);
71
- config.border = makeBorder(config.border);
72
- config.columns = makeColumns(rows, config.columns, config.columnDefault);
73
-
74
- if (!config.drawHorizontalLine) {
75
- /**
76
- * @returns {boolean}
77
- */
78
- config.drawHorizontalLine = () => {
79
- return true;
80
- };
81
- }
82
-
83
- if (config.singleLine === undefined) {
84
- config.singleLine = false;
85
- }
86
-
87
- return config;
88
- };
89
-
90
- var _default = makeConfig;
91
- exports.default = _default;
92
- //# sourceMappingURL=makeConfig.js.map
@@ -1,76 +0,0 @@
1
- import cloneDeep from 'lodash.clonedeep';
2
- import calculateMaximumColumnWidthIndex from './calculateMaximumColumnWidthIndex';
3
- import getBorderCharacters from './getBorderCharacters';
4
- import validateConfig from './validateConfig';
5
-
6
- /**
7
- * Merges user provided border characters with the default border ("honeywell") characters.
8
- *
9
- * @param {object} border
10
- * @returns {object}
11
- */
12
- const makeBorder = (border = {}) => {
13
- return Object.assign({}, getBorderCharacters('honeywell'), border);
14
- };
15
-
16
- /**
17
- * Creates a configuration for every column using default
18
- * values for the missing configuration properties.
19
- *
20
- * @param {Array[]} rows
21
- * @param {object} columns
22
- * @param {object} columnDefault
23
- * @returns {object}
24
- */
25
- const makeColumns = (rows, columns = {}, columnDefault = {}) => {
26
- const maximumColumnWidthIndex = calculateMaximumColumnWidthIndex(rows);
27
-
28
- for (let index = 0; index < rows[0].length; index++) {
29
- if (typeof columns[index] === 'undefined') {
30
- columns[index] = {};
31
- }
32
-
33
- columns[index] = Object.assign({
34
- alignment: 'left',
35
- paddingLeft: 1,
36
- paddingRight: 1,
37
- truncate: Number.POSITIVE_INFINITY,
38
- width: maximumColumnWidthIndex[index],
39
- wrapWord: false,
40
- }, columnDefault, columns[index]);
41
- }
42
-
43
- return columns;
44
- };
45
-
46
- /**
47
- * Makes a new configuration object out of the userConfig object
48
- * using default values for the missing configuration properties.
49
- *
50
- * @param {Array[]} rows
51
- * @param {object} userConfig
52
- * @returns {object}
53
- */
54
- export default (rows, userConfig = {}) => {
55
- validateConfig('config.json', userConfig);
56
-
57
- const config = cloneDeep(userConfig);
58
-
59
- config.border = makeBorder(config.border);
60
- config.columns = makeColumns(rows, config.columns, config.columnDefault);
61
-
62
- if (!config.drawHorizontalLine) {
63
- /**
64
- * @returns {boolean}
65
- */
66
- config.drawHorizontalLine = () => {
67
- return true;
68
- };
69
- }
70
-
71
- if (config.singleLine === undefined) {
72
- config.singleLine = false;
73
- }
74
-
75
- return config;
76
- };
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/makeConfig.js"],"names":["makeBorder","border","Object","assign","makeColumns","rows","columns","columnDefault","maximumColumnWidthIndex","index","length","alignment","paddingLeft","paddingRight","truncate","Number","POSITIVE_INFINITY","width","wrapWord","userConfig","config","drawHorizontalLine","singleLine","undefined"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMA,UAAU,GAAG,CAACC,MAAM,GAAG,EAAV,KAAiB;AAClC,SAAOC,MAAM,CAACC,MAAP,CAAc,EAAd,EAAkB,kCAAoB,WAApB,CAAlB,EAAoDF,MAApD,CAAP;AACD,CAFD;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,MAAMG,WAAW,GAAG,CAACC,IAAD,EAAOC,OAAO,GAAG,EAAjB,EAAqBC,aAAa,GAAG,EAArC,KAA4C;AAC9D,QAAMC,uBAAuB,GAAG,+CAAiCH,IAAjC,CAAhC;;AAEA,OAAK,IAAII,KAAK,GAAG,CAAjB,EAAoBA,KAAK,GAAGJ,IAAI,CAAC,CAAD,CAAJ,CAAQK,MAApC,EAA4CD,KAAK,EAAjD,EAAqD;AACnD,QAAI,OAAOH,OAAO,CAACG,KAAD,CAAd,KAA0B,WAA9B,EAA2C;AACzCH,MAAAA,OAAO,CAACG,KAAD,CAAP,GAAiB,EAAjB;AACD;;AAEDH,IAAAA,OAAO,CAACG,KAAD,CAAP,GAAiBP,MAAM,CAACC,MAAP,CAAc;AAC7BQ,MAAAA,SAAS,EAAE,MADkB;AAE7BC,MAAAA,WAAW,EAAE,CAFgB;AAG7BC,MAAAA,YAAY,EAAE,CAHe;AAI7BC,MAAAA,QAAQ,EAAEC,MAAM,CAACC,iBAJY;AAK7BC,MAAAA,KAAK,EAAET,uBAAuB,CAACC,KAAD,CALD;AAM7BS,MAAAA,QAAQ,EAAE;AANmB,KAAd,EAOdX,aAPc,EAOCD,OAAO,CAACG,KAAD,CAPR,CAAjB;AAQD;;AAED,SAAOH,OAAP;AACD,CAnBD;AAqBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;oBACgBD,I,EAAMc,UAAU,GAAG,E,KAAO;AACxC,+BAAe,aAAf,EAA8BA,UAA9B;AAEA,QAAMC,MAAM,GAAG,qBAAUD,UAAV,CAAf;AAEAC,EAAAA,MAAM,CAACnB,MAAP,GAAgBD,UAAU,CAACoB,MAAM,CAACnB,MAAR,CAA1B;AACAmB,EAAAA,MAAM,CAACd,OAAP,GAAiBF,WAAW,CAACC,IAAD,EAAOe,MAAM,CAACd,OAAd,EAAuBc,MAAM,CAACb,aAA9B,CAA5B;;AAEA,MAAI,CAACa,MAAM,CAACC,kBAAZ,EAAgC;AAC9B;AACJ;AACA;AACID,IAAAA,MAAM,CAACC,kBAAP,GAA4B,MAAM;AAChC,aAAO,IAAP;AACD,KAFD;AAGD;;AAED,MAAID,MAAM,CAACE,UAAP,KAAsBC,SAA1B,EAAqC;AACnCH,IAAAA,MAAM,CAACE,UAAP,GAAoB,KAApB;AACD;;AAED,SAAOF,MAAP;AACD,C","sourcesContent":["import cloneDeep from 'lodash.clonedeep';\nimport calculateMaximumColumnWidthIndex from './calculateMaximumColumnWidthIndex';\nimport getBorderCharacters from './getBorderCharacters';\nimport validateConfig from './validateConfig';\n\n/**\n * Merges user provided border characters with the default border (\"honeywell\") characters.\n *\n * @param {object} border\n * @returns {object}\n */\nconst makeBorder = (border = {}) => {\n return Object.assign({}, getBorderCharacters('honeywell'), border);\n};\n\n/**\n * Creates a configuration for every column using default\n * values for the missing configuration properties.\n *\n * @param {Array[]} rows\n * @param {object} columns\n * @param {object} columnDefault\n * @returns {object}\n */\nconst makeColumns = (rows, columns = {}, columnDefault = {}) => {\n const maximumColumnWidthIndex = calculateMaximumColumnWidthIndex(rows);\n\n for (let index = 0; index < rows[0].length; index++) {\n if (typeof columns[index] === 'undefined') {\n columns[index] = {};\n }\n\n columns[index] = Object.assign({\n alignment: 'left',\n paddingLeft: 1,\n paddingRight: 1,\n truncate: Number.POSITIVE_INFINITY,\n width: maximumColumnWidthIndex[index],\n wrapWord: false,\n }, columnDefault, columns[index]);\n }\n\n return columns;\n};\n\n/**\n * Makes a new configuration object out of the userConfig object\n * using default values for the missing configuration properties.\n *\n * @param {Array[]} rows\n * @param {object} userConfig\n * @returns {object}\n */\nexport default (rows, userConfig = {}) => {\n validateConfig('config.json', userConfig);\n\n const config = cloneDeep(userConfig);\n\n config.border = makeBorder(config.border);\n config.columns = makeColumns(rows, config.columns, config.columnDefault);\n\n if (!config.drawHorizontalLine) {\n /**\n * @returns {boolean}\n */\n config.drawHorizontalLine = () => {\n return true;\n };\n }\n\n if (config.singleLine === undefined) {\n config.singleLine = false;\n }\n\n return config;\n};\n"],"file":"makeConfig.js"}
@@ -1,98 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
-
8
- var _lodash = _interopRequireDefault(require("lodash.clonedeep"));
9
-
10
- var _getBorderCharacters = _interopRequireDefault(require("./getBorderCharacters"));
11
-
12
- var _validateConfig = _interopRequireDefault(require("./validateConfig"));
13
-
14
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
-
16
- /**
17
- * Merges user provided border characters with the default border ("honeywell") characters.
18
- *
19
- * @param {object} border
20
- * @returns {object}
21
- */
22
- const makeBorder = (border = {}) => {
23
- return Object.assign({}, (0, _getBorderCharacters.default)('honeywell'), border);
24
- };
25
- /**
26
- * Creates a configuration for every column using default
27
- * values for the missing configuration properties.
28
- *
29
- * @param {number} columnCount
30
- * @param {object} columns
31
- * @param {object} columnDefault
32
- * @returns {object}
33
- */
34
-
35
-
36
- const makeColumns = (columnCount, columns = {}, columnDefault = {}) => {
37
- for (let index = 0; index < columnCount; index++) {
38
- if (typeof columns[index] === 'undefined') {
39
- columns[index] = {};
40
- }
41
-
42
- columns[index] = Object.assign({
43
- alignment: 'left',
44
- paddingLeft: 1,
45
- paddingRight: 1,
46
- truncate: Number.POSITIVE_INFINITY,
47
- wrapWord: false
48
- }, columnDefault, columns[index]);
49
- }
50
-
51
- return columns;
52
- };
53
- /**
54
- * @typedef {object} columnConfig
55
- * @property {string} alignment
56
- * @property {number} width
57
- * @property {number} truncate
58
- * @property {number} paddingLeft
59
- * @property {number} paddingRight
60
- */
61
-
62
- /**
63
- * @typedef {object} streamConfig
64
- * @property {columnConfig} columnDefault
65
- * @property {object} border
66
- * @property {columnConfig[]}
67
- * @property {number} columnCount Number of columns in the table (required).
68
- */
69
-
70
- /**
71
- * Makes a new configuration object out of the userConfig object
72
- * using default values for the missing configuration properties.
73
- *
74
- * @param {streamConfig} userConfig
75
- * @returns {object}
76
- */
77
-
78
-
79
- const makeStreamConfig = (userConfig = {}) => {
80
- (0, _validateConfig.default)('streamConfig.json', userConfig);
81
- const config = (0, _lodash.default)(userConfig);
82
-
83
- if (!config.columnDefault || !config.columnDefault.width) {
84
- throw new Error('Must provide config.columnDefault.width when creating a stream.');
85
- }
86
-
87
- if (!config.columnCount) {
88
- throw new Error('Must provide config.columnCount.');
89
- }
90
-
91
- config.border = makeBorder(config.border);
92
- config.columns = makeColumns(config.columnCount, config.columns, config.columnDefault);
93
- return config;
94
- };
95
-
96
- var _default = makeStreamConfig;
97
- exports.default = _default;
98
- //# sourceMappingURL=makeStreamConfig.js.map
@@ -1,83 +0,0 @@
1
- import cloneDeep from 'lodash.clonedeep';
2
- import getBorderCharacters from './getBorderCharacters';
3
- import validateConfig from './validateConfig';
4
-
5
- /**
6
- * Merges user provided border characters with the default border ("honeywell") characters.
7
- *
8
- * @param {object} border
9
- * @returns {object}
10
- */
11
- const makeBorder = (border = {}) => {
12
- return Object.assign({}, getBorderCharacters('honeywell'), border);
13
- };
14
-
15
- /**
16
- * Creates a configuration for every column using default
17
- * values for the missing configuration properties.
18
- *
19
- * @param {number} columnCount
20
- * @param {object} columns
21
- * @param {object} columnDefault
22
- * @returns {object}
23
- */
24
- const makeColumns = (columnCount, columns = {}, columnDefault = {}) => {
25
- for (let index = 0; index < columnCount; index++) {
26
- if (typeof columns[index] === 'undefined') {
27
- columns[index] = {};
28
- }
29
-
30
- columns[index] = Object.assign({
31
- alignment: 'left',
32
- paddingLeft: 1,
33
- paddingRight: 1,
34
- truncate: Number.POSITIVE_INFINITY,
35
- wrapWord: false,
36
- }, columnDefault, columns[index]);
37
- }
38
-
39
- return columns;
40
- };
41
-
42
- /**
43
- * @typedef {object} columnConfig
44
- * @property {string} alignment
45
- * @property {number} width
46
- * @property {number} truncate
47
- * @property {number} paddingLeft
48
- * @property {number} paddingRight
49
- */
50
-
51
- /**
52
- * @typedef {object} streamConfig
53
- * @property {columnConfig} columnDefault
54
- * @property {object} border
55
- * @property {columnConfig[]}
56
- * @property {number} columnCount Number of columns in the table (required).
57
- */
58
-
59
- /**
60
- * Makes a new configuration object out of the userConfig object
61
- * using default values for the missing configuration properties.
62
- *
63
- * @param {streamConfig} userConfig
64
- * @returns {object}
65
- */
66
- export default (userConfig = {}) => {
67
- validateConfig('streamConfig.json', userConfig);
68
-
69
- const config = cloneDeep(userConfig);
70
-
71
- if (!config.columnDefault || !config.columnDefault.width) {
72
- throw new Error('Must provide config.columnDefault.width when creating a stream.');
73
- }
74
-
75
- if (!config.columnCount) {
76
- throw new Error('Must provide config.columnCount.');
77
- }
78
-
79
- config.border = makeBorder(config.border);
80
- config.columns = makeColumns(config.columnCount, config.columns, config.columnDefault);
81
-
82
- return config;
83
- };
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/makeStreamConfig.js"],"names":["makeBorder","border","Object","assign","makeColumns","columnCount","columns","columnDefault","index","alignment","paddingLeft","paddingRight","truncate","Number","POSITIVE_INFINITY","wrapWord","userConfig","config","width","Error"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMA,UAAU,GAAG,CAACC,MAAM,GAAG,EAAV,KAAiB;AAClC,SAAOC,MAAM,CAACC,MAAP,CAAc,EAAd,EAAkB,kCAAoB,WAApB,CAAlB,EAAoDF,MAApD,CAAP;AACD,CAFD;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,MAAMG,WAAW,GAAG,CAACC,WAAD,EAAcC,OAAO,GAAG,EAAxB,EAA4BC,aAAa,GAAG,EAA5C,KAAmD;AACrE,OAAK,IAAIC,KAAK,GAAG,CAAjB,EAAoBA,KAAK,GAAGH,WAA5B,EAAyCG,KAAK,EAA9C,EAAkD;AAChD,QAAI,OAAOF,OAAO,CAACE,KAAD,CAAd,KAA0B,WAA9B,EAA2C;AACzCF,MAAAA,OAAO,CAACE,KAAD,CAAP,GAAiB,EAAjB;AACD;;AAEDF,IAAAA,OAAO,CAACE,KAAD,CAAP,GAAiBN,MAAM,CAACC,MAAP,CAAc;AAC7BM,MAAAA,SAAS,EAAE,MADkB;AAE7BC,MAAAA,WAAW,EAAE,CAFgB;AAG7BC,MAAAA,YAAY,EAAE,CAHe;AAI7BC,MAAAA,QAAQ,EAAEC,MAAM,CAACC,iBAJY;AAK7BC,MAAAA,QAAQ,EAAE;AALmB,KAAd,EAMdR,aANc,EAMCD,OAAO,CAACE,KAAD,CANR,CAAjB;AAOD;;AAED,SAAOF,OAAP;AACD,CAhBD;AAkBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;;0BACgBU,UAAU,GAAG,E,KAAO;AAClC,+BAAe,mBAAf,EAAoCA,UAApC;AAEA,QAAMC,MAAM,GAAG,qBAAUD,UAAV,CAAf;;AAEA,MAAI,CAACC,MAAM,CAACV,aAAR,IAAyB,CAACU,MAAM,CAACV,aAAP,CAAqBW,KAAnD,EAA0D;AACxD,UAAM,IAAIC,KAAJ,CAAU,iEAAV,CAAN;AACD;;AAED,MAAI,CAACF,MAAM,CAACZ,WAAZ,EAAyB;AACvB,UAAM,IAAIc,KAAJ,CAAU,kCAAV,CAAN;AACD;;AAEDF,EAAAA,MAAM,CAAChB,MAAP,GAAgBD,UAAU,CAACiB,MAAM,CAAChB,MAAR,CAA1B;AACAgB,EAAAA,MAAM,CAACX,OAAP,GAAiBF,WAAW,CAACa,MAAM,CAACZ,WAAR,EAAqBY,MAAM,CAACX,OAA5B,EAAqCW,MAAM,CAACV,aAA5C,CAA5B;AAEA,SAAOU,MAAP;AACD,C","sourcesContent":["import cloneDeep from 'lodash.clonedeep';\nimport getBorderCharacters from './getBorderCharacters';\nimport validateConfig from './validateConfig';\n\n/**\n * Merges user provided border characters with the default border (\"honeywell\") characters.\n *\n * @param {object} border\n * @returns {object}\n */\nconst makeBorder = (border = {}) => {\n return Object.assign({}, getBorderCharacters('honeywell'), border);\n};\n\n/**\n * Creates a configuration for every column using default\n * values for the missing configuration properties.\n *\n * @param {number} columnCount\n * @param {object} columns\n * @param {object} columnDefault\n * @returns {object}\n */\nconst makeColumns = (columnCount, columns = {}, columnDefault = {}) => {\n for (let index = 0; index < columnCount; index++) {\n if (typeof columns[index] === 'undefined') {\n columns[index] = {};\n }\n\n columns[index] = Object.assign({\n alignment: 'left',\n paddingLeft: 1,\n paddingRight: 1,\n truncate: Number.POSITIVE_INFINITY,\n wrapWord: false,\n }, columnDefault, columns[index]);\n }\n\n return columns;\n};\n\n/**\n * @typedef {object} columnConfig\n * @property {string} alignment\n * @property {number} width\n * @property {number} truncate\n * @property {number} paddingLeft\n * @property {number} paddingRight\n */\n\n/**\n * @typedef {object} streamConfig\n * @property {columnConfig} columnDefault\n * @property {object} border\n * @property {columnConfig[]}\n * @property {number} columnCount Number of columns in the table (required).\n */\n\n/**\n * Makes a new configuration object out of the userConfig object\n * using default values for the missing configuration properties.\n *\n * @param {streamConfig} userConfig\n * @returns {object}\n */\nexport default (userConfig = {}) => {\n validateConfig('streamConfig.json', userConfig);\n\n const config = cloneDeep(userConfig);\n\n if (!config.columnDefault || !config.columnDefault.width) {\n throw new Error('Must provide config.columnDefault.width when creating a stream.');\n }\n\n if (!config.columnCount) {\n throw new Error('Must provide config.columnCount.');\n }\n\n config.border = makeBorder(config.border);\n config.columns = makeColumns(config.columnCount, config.columns, config.columnDefault);\n\n return config;\n};\n"],"file":"makeStreamConfig.js"}