Skip to content

Commit 8f3724b

Browse files
Merge pull request #67 from quick123official/feature/command_line_prompt
Feature/command line prompt
2 parents 6616791 + add7ed7 commit 8f3724b

File tree

5 files changed

+57
-24
lines changed

5 files changed

+57
-24
lines changed

package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "QuickRedis",
3-
"version": "2.5.0",
3+
"version": "2.5.1",
44
"private": true,
55
"description": "QuickRedis",
66
"author": "https://quick123.net/",
@@ -17,7 +17,7 @@
1717
"react-monaco-editor": "^0.36.0",
1818
"redis-splitargs": "^1.0.1",
1919
"socksv5-fixed": "0.0.6",
20-
"ssh2": "^1.4.0"
20+
"ssh2": "^1.5.0"
2121
},
2222
"scripts": {
2323
"start1": "react-app-rewired start",
@@ -85,7 +85,7 @@
8585
"babel-plugin-import": "^1.13.0",
8686
"customize-cra": "^1.0.0",
8787
"devtron": "^1.4.0",
88-
"electron": "^9.1.0",
88+
"electron": "11.5.0",
8989
"electron-builder": "^22.6.1",
9090
"electron-devtools-installer": "^3.1.1",
9191
"global": "^4.4.0",

src/__test_/lodash.test.js

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
test("lodash", () => {
2+
let dbIndexMap = new Map();
3+
dbIndexMap.set(1, {
4+
key: "" + 1,
5+
dbIndex: 1,
6+
title: 1,
7+
total: 0,
8+
});
9+
dbIndexMap.set(20, {
10+
key: "" + 1,
11+
dbIndex: 20,
12+
title: 1,
13+
total: 0,
14+
});
15+
for ([key, value] of dbIndexMap) {
16+
if (value.dbIndex >= 16) {
17+
console.info("", key, value);
18+
}
19+
}
20+
});

src/pages/HostContent/index.js

Lines changed: 26 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,16 @@ class HostContent extends Component {
7373
*/
7474
updateDBCount() {
7575
let redis = this.props.node.redis;
76+
// get databases. default 16
77+
let maxIndex = 16;
78+
redis
79+
.config("get", "databases")
80+
.then((data) => {
81+
maxIndex = parseInt(data[1]);
82+
})
83+
.catch((err) => {
84+
Log.error("[cmd=config] get databases error", err);
85+
});
7686
redis.info("Keyspace", (err, res) => {
7787
if (err) {
7888
message.error("", err);
@@ -105,19 +115,23 @@ class HostContent extends Component {
105115
Log.error("[cmd=info] Keyspace split error", error);
106116
}
107117
let dbTabs = [];
108-
if (dbTabs.length === 0) {
109-
for (let i = 0; i < 16; i++) {
110-
let dbIndexObj = dbIndexMap.get(i);
111-
if (dbIndexObj === undefined || dbIndexObj === null) {
112-
dbIndexObj = {
113-
key: "" + i,
114-
dbIndex: i,
115-
title: "db" + i,
116-
total: 0,
117-
};
118-
}
119-
dbTabs.push(dbIndexObj);
118+
// get databases 失败,则尝试在 Keyspace 获取最大值
119+
for (let [key, value] of dbIndexMap) {
120+
if (value.dbIndex > maxIndex) {
121+
maxIndex = value.dbIndex;
122+
}
123+
}
124+
for (let i = 0; i < maxIndex; i++) {
125+
let dbIndexObj = dbIndexMap.get(i);
126+
if (dbIndexObj === undefined || dbIndexObj === null) {
127+
dbIndexObj = {
128+
key: "" + i,
129+
dbIndex: i,
130+
title: "db" + i,
131+
total: 0,
132+
};
120133
}
134+
dbTabs.push(dbIndexObj);
121135
}
122136
this.setState({ dbTabs: dbTabs });
123137
});

src/services/RedisService.js

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import intl from "react-intl-universal";
88

99
let Redis = window.require("ioredis");
1010
const net = window.require("net");
11-
const Client = window.require("ssh2");
11+
const { Client } = window.require("ssh2");
1212
const { readFileSync } = window.require("fs");
1313

1414
/**
@@ -304,9 +304,8 @@ export default class RedisService {
304304
let currentMaster =
305305
masters[hostinfo.masterName];
306306
if (currentMaster != null) {
307-
let address = currentMaster.address.split(
308-
":"
309-
);
307+
let address =
308+
currentMaster.address.split(":");
310309
let masterHost = address[0];
311310
let masterPort = address[1];
312311
const masterServer = net

yarn.lock

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4923,10 +4923,10 @@ electron-to-chromium@^1.3.378, electron-to-chromium@^1.3.867:
49234923
resolved "https://registry.npmmirror.com/electron-to-chromium/download/electron-to-chromium-1.3.870.tgz#c15c921e66a46985181b261f8093b91c2abb6604"
49244924
integrity sha1-wVySHmakaYUYGyYfgJO5HCq7ZgQ=
49254925

4926-
electron@^9.1.0:
4927-
version "9.4.4"
4928-
resolved "https://registry.npmmirror.com/electron/download/electron-9.4.4.tgz#2a74a0655a74bd326216672c5ae6ed3a44451446"
4929-
integrity sha1-KnSgZVp0vTJiFmcsWubtOkRFFEY=
4926+
electron@11.5.0:
4927+
version "11.5.0"
4928+
resolved "https://registry.npmmirror.com/electron/download/electron-11.5.0.tgz?cache=0&sync_timestamp=1637029455356&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Felectron%2Fdownload%2Felectron-11.5.0.tgz#f1650543b9d8f2047d3807755bdb120153ed210f"
4929+
integrity sha1-8WUFQ7nY8gR9OAd1W9sSAVPtIQ8=
49304930
dependencies:
49314931
"@electron/get" "^1.0.1"
49324932
"@types/node" "^12.0.12"
@@ -12084,7 +12084,7 @@ [email protected]:
1208412084
resolved "https://registry.nlark.com/sprintf/download/sprintf-0.1.5.tgz#8f83e39a9317c1a502cb7db8050e51c679f6edcf"
1208512085
integrity sha1-j4PjmpMXwaUCy324BQ5Rxnn27c8=
1208612086

12087-
ssh2@^1.4.0:
12087+
ssh2@^1.5.0:
1208812088
version "1.5.0"
1208912089
resolved "https://registry.npmmirror.com/ssh2/download/ssh2-1.5.0.tgz#4dc559ba98a1cbb420e8d42998dfe35d0eda92bc"
1209012090
integrity sha1-TcVZupihy7Qg6NQpmN/jXQ7akrw=

0 commit comments

Comments
 (0)