diff --git a/package-lock.json b/package-lock.json index 4ad89292..3ae5d422 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1065,9 +1065,9 @@ } }, "@electron/get": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/@electron/get/-/get-1.10.0.tgz", - "integrity": "sha512-hlueNXU51c3CwQjBw/i5fwt+VfQgSQVUTdicpCHkhEjNZaa4CXJ5W1GaxSwtLE2dvRmAHjpIjUMHTqJ53uojfg==", + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/@electron/get/-/get-1.12.2.tgz", + "integrity": "sha512-vAuHUbfvBQpYTJ5wB7uVIDq5c/Ry0fiTBMs7lnEYAo/qXXppIVcWdfBr57u6eRnKdVso7KSiH6p/LbQAG6Izrg==", "dev": true, "requires": { "debug": "^4.1.1", @@ -3894,9 +3894,9 @@ } }, "electron": { - "version": "8.2.4", - "resolved": "https://registry.npmjs.org/electron/-/electron-8.2.4.tgz", - "integrity": "sha512-Lle0InIgSAHZxD5KDY0wZ1A2Zlc6GHwMhAxoHMzn05mndyP1YBkCYHc0TDDofzUTrsLFofduPjlknO5Oj9fTPA==", + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/electron/-/electron-8.3.0.tgz", + "integrity": "sha512-XRjiIJICZCgUr2vKSUI2PTkfP0gPFqCtqJUaTJSfCTuE3nTrxBKOUNeRMuCzEqspKkpFQU3SB3MdbMSHmZARlQ==", "dev": true, "requires": { "@electron/get": "^1.0.1", @@ -9302,24 +9302,24 @@ "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" }, "pg": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/pg/-/pg-8.2.0.tgz", - "integrity": "sha512-EQeWKZv7qBTQZQa7EraR61AOi0bpizvlZLvrPdgAGaraX4YI+y40iQnL39XjPMXVnHOOG3jV6kAGtc0WSJn/+A==", + "version": "8.2.1", + "resolved": "https://registry.npmjs.org/pg/-/pg-8.2.1.tgz", + "integrity": "sha512-DKzffhpkWRr9jx7vKxA+ur79KG+SKw+PdjMb1IRhMiKI9zqYUGczwFprqy+5Veh/DCcFs1Y6V8lRLN5I1DlleQ==", "requires": { "buffer-writer": "2.0.0", "packet-reader": "1.0.0", - "pg-connection-string": "^2.2.2", - "pg-pool": "^3.2.0", - "pg-protocol": "^1.2.3", + "pg-connection-string": "^2.2.3", + "pg-pool": "^3.2.1", + "pg-protocol": "^1.2.4", "pg-types": "^2.1.0", "pgpass": "1.x", "semver": "4.3.2" }, "dependencies": { "pg-connection-string": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/pg-connection-string/-/pg-connection-string-2.2.2.tgz", - "integrity": "sha512-+hel4DGuSZCjCZwglAuyi+XlodHnKmrbyTw0hVWlmGN2o4AfJDkDo5obAFzblS5M5PFBMx0uDt5Y1QjlNC+tqg==" + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/pg-connection-string/-/pg-connection-string-2.2.3.tgz", + "integrity": "sha512-I/KCSQGmOrZx6sMHXkOs2MjddrYcqpza3Dtsy0AjIgBr/bZiPJRK9WhABXN1Uy1UDazRbi9gZEzO2sAhL5EqiQ==" }, "semver": { "version": "4.3.2", @@ -9339,14 +9339,14 @@ "integrity": "sha512-WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw==" }, "pg-pool": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/pg-pool/-/pg-pool-3.2.0.tgz", - "integrity": "sha512-7BLwDNDEfPFjE9vmZLcJPLFwuDAVGZ5lIZo2MeQfwYG7EPGfdNVis/dz6obI/yKqvQIx2sf6QBKXMLB+y/ftgA==" + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/pg-pool/-/pg-pool-3.2.1.tgz", + "integrity": "sha512-BQDPWUeKenVrMMDN9opfns/kZo4lxmSWhIqo+cSAF7+lfi9ZclQbr9vfnlNaPr8wYF3UYjm5X0yPAhbcgqNOdA==" }, "pg-protocol": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/pg-protocol/-/pg-protocol-1.2.3.tgz", - "integrity": "sha512-erHFURS0mPmTbq18cn/zNL3Y4IzNCrU4sgCim0qy7zAPe3Vc0rvK5cImJR6lDvIaz3fJU2R1R9FNOlnUtyF10Q==" + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/pg-protocol/-/pg-protocol-1.2.4.tgz", + "integrity": "sha512-/8L/G+vW/VhWjTGXpGh8XVkXOFx1ZDY+Yuz//Ab8CfjInzFkreI+fDG3WjCeSra7fIZwAFxzbGptNbm8xSXenw==" }, "pg-types": { "version": "2.2.0", @@ -12582,9 +12582,9 @@ } }, "vue-i18n": { - "version": "8.17.4", - "resolved": "https://registry.npmjs.org/vue-i18n/-/vue-i18n-8.17.4.tgz", - "integrity": "sha512-wpk/drIkPf6gHCtvHc8zAZ1nsWBZ+/OOJYtJxqhYD6CKT0FJAG5oypwgF9kABt30FBWhl8NEb/QY+vaaBARlFg==" + "version": "8.17.6", + "resolved": "https://registry.npmjs.org/vue-i18n/-/vue-i18n-8.17.6.tgz", + "integrity": "sha512-SsKL5D9Ii3zJPsFhUSllY754XuZvP8uCouUm+Mbylu95h3OwenV09uzIIEjkT7EtWyDQuWSMWObrNaD4ukBGZw==" }, "vue-loader": { "version": "15.9.1", @@ -12626,9 +12626,9 @@ "dev": true }, "vuex": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/vuex/-/vuex-3.3.0.tgz", - "integrity": "sha512-1MfcBt+YFd20DPwKe0ThhYm1UEXZya4gVKUvCy7AtS11YAOUR+9a6u4fsv1Rr6ePZCDNxW/M1zuIaswp6nNv8Q==" + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/vuex/-/vuex-3.4.0.tgz", + "integrity": "sha512-ajtqwEW/QhnrBZQsZxCLHThZZaa+Db45c92Asf46ZDXu6uHXgbfVuBaJ4gzD2r4UX0oMJHstFwd2r2HM4l8umg==" }, "vuex-persist": { "version": "2.2.0", diff --git a/package.json b/package.json index 291c4219..5945318c 100644 --- a/package.json +++ b/package.json @@ -32,16 +32,16 @@ "material-design-icons": "^3.0.1", "mssql": "^6.2.0", "mysql": "^2.18.1", - "pg": "^8.2.0", + "pg": "^8.2.1", "source-map-support": "^0.5.16", "spectre.css": "^0.5.8", - "vue-i18n": "^8.17.4", - "vuex": "^3.3.0", + "vue-i18n": "^8.17.6", + "vuex": "^3.4.0", "vuex-persist": "^2.2.0" }, "devDependencies": { "babel-eslint": "^10.1.0", - "electron": "^8.2.4", + "electron": "^8.3.0", "electron-builder": "^22.4.1", "electron-devtools-installer": "^3.0.0", "electron-webpack": "^2.8.2", diff --git a/src/main/ipc-handlers/connection.js b/src/main/ipc-handlers/connection.js index 628d8c54..19612ebb 100644 --- a/src/main/ipc-handlers/connection.js +++ b/src/main/ipc-handlers/connection.js @@ -30,8 +30,8 @@ export default () => { }); ipcMain.handle('connect', async (event, conn) => { - // TODO: make a test before - connections[conn.uid] = knex({ + let structure; + const connection = knex({ client: conn.client, connection: { host: conn.host, @@ -45,6 +45,14 @@ export default () => { } }); - return await InformationSchema.getStructure(connections[conn.uid]); + try { + structure = await InformationSchema.getStructure(connection); + } + catch (err) { + return { status: 'error', response: err.toString() }; + } + + connections[conn.uid] = connection; + return { status: 'success', response: structure }; }); }; diff --git a/src/renderer/components/BaseNotification.vue b/src/renderer/components/BaseNotification.vue index 1c1e349a..9724240c 100644 --- a/src/renderer/components/BaseNotification.vue +++ b/src/renderer/components/BaseNotification.vue @@ -1,15 +1,20 @@ + + diff --git a/src/renderer/components/DatabaseExploreBar.vue b/src/renderer/components/DatabaseExploreBar.vue index 1605141e..b923ec67 100644 --- a/src/renderer/components/DatabaseExploreBar.vue +++ b/src/renderer/components/DatabaseExploreBar.vue @@ -3,47 +3,20 @@
{{ connection.user }}@{{ connection.host }}:{{ connection.port }}
- + diff --git a/src/renderer/components/DatabaseWorkspace.vue b/src/renderer/components/DatabaseWorkspace.vue index 52fe8147..ecd4bd78 100644 --- a/src/renderer/components/DatabaseWorkspace.vue +++ b/src/renderer/components/DatabaseWorkspace.vue @@ -1,5 +1,5 @@