hedgequantx 2.7.6 → 2.7.7
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.
- package/package.json +1 -1
- package/src/menus/dashboard.js +36 -19
package/package.json
CHANGED
package/src/menus/dashboard.js
CHANGED
|
@@ -81,30 +81,47 @@ const dashboardMenu = async (service) => {
|
|
|
81
81
|
|
|
82
82
|
console.log(chalk.cyan('╠' + '═'.repeat(W) + '╣'));
|
|
83
83
|
|
|
84
|
-
// Menu in 2 columns -
|
|
84
|
+
// Menu in 2 columns - aligned
|
|
85
85
|
const col1Width = Math.floor(W / 2);
|
|
86
86
|
const col2Width = W - col1Width;
|
|
87
87
|
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
const
|
|
100
|
-
const
|
|
101
|
-
|
|
102
|
-
|
|
88
|
+
// Find max width for alignment
|
|
89
|
+
const menuItems = [
|
|
90
|
+
{ left: '[1] View Accounts', right: '[2] View Stats' },
|
|
91
|
+
{ left: '[+] Add Prop-Account', right: '[A] Algo-Trading' },
|
|
92
|
+
{ left: '[U] Update HQX', right: '[X] Disconnect' },
|
|
93
|
+
];
|
|
94
|
+
|
|
95
|
+
const maxLeftLen = Math.max(...menuItems.map(m => m.left.length));
|
|
96
|
+
const maxRightLen = Math.max(...menuItems.map(m => m.right.length));
|
|
97
|
+
|
|
98
|
+
const menuRow = (left, right, leftColor, rightColor) => {
|
|
99
|
+
const leftPlain = left;
|
|
100
|
+
const rightPlain = right;
|
|
101
|
+
|
|
102
|
+
// Pad left item to max width, then center in column
|
|
103
|
+
const leftPadded = leftPlain.padEnd(maxLeftLen);
|
|
104
|
+
const leftTotalPad = col1Width - maxLeftLen;
|
|
105
|
+
const leftPadL = Math.floor(leftTotalPad / 2);
|
|
106
|
+
const leftPadR = leftTotalPad - leftPadL;
|
|
107
|
+
|
|
108
|
+
// Pad right item to max width, then center in column
|
|
109
|
+
const rightPadded = rightPlain.padEnd(maxRightLen);
|
|
110
|
+
const rightTotalPad = col2Width - maxRightLen;
|
|
111
|
+
const rightPadL = Math.floor(rightTotalPad / 2);
|
|
112
|
+
const rightPadR = rightTotalPad - rightPadL;
|
|
113
|
+
|
|
114
|
+
console.log(
|
|
115
|
+
chalk.cyan('║') +
|
|
116
|
+
' '.repeat(leftPadL) + leftColor(leftPadded) + ' '.repeat(leftPadR) +
|
|
117
|
+
' '.repeat(rightPadL) + rightColor(rightPadded) + ' '.repeat(rightPadR) +
|
|
118
|
+
chalk.cyan('║')
|
|
119
|
+
);
|
|
103
120
|
};
|
|
104
121
|
|
|
105
|
-
menuRow(
|
|
106
|
-
menuRow(
|
|
107
|
-
menuRow(
|
|
122
|
+
menuRow('[1] View Accounts', '[2] View Stats', chalk.cyan, chalk.cyan);
|
|
123
|
+
menuRow('[+] Add Prop-Account', '[A] Algo-Trading', chalk.cyan, chalk.magenta);
|
|
124
|
+
menuRow('[U] Update HQX', '[X] Disconnect', chalk.yellow, chalk.red);
|
|
108
125
|
|
|
109
126
|
console.log(chalk.cyan('╚' + '═'.repeat(W) + '╝'));
|
|
110
127
|
|