From 34764a6e331a12aa3a3581201780a94ab6a59192 Mon Sep 17 00:00:00 2001 From: lana-k Date: Sun, 27 Dec 2020 18:03:04 +0100 Subject: [PATCH] remove saveDbName method (refactor) --- package.json | 2 +- src/components/DbUpload.vue | 4 ++-- src/components/Schema.vue | 4 ++-- src/dataBase.js | 8 ++++---- src/store/index.js | 6 ++---- 5 files changed, 11 insertions(+), 13 deletions(-) diff --git a/package.json b/package.json index 8e79043..b011047 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "sqliteviz", - "version": "0.8.0", + "version": "1.0.0", "license": "Apache-2.0", "private": true, "scripts": { diff --git a/src/components/DbUpload.vue b/src/components/DbUpload.vue index 1eef767..03dc749 100644 --- a/src/components/DbUpload.vue +++ b/src/components/DbUpload.vue @@ -78,8 +78,8 @@ export default { loadDb () { this.state = 'drop' return Promise.all([this.$db.loadDb(this.$refs.file.files[0]), this.animationPromise]) - .then(([schema]) => { - this.$store.commit('saveSchema', schema) + .then(([{ dbName, schema }]) => { + this.$store.commit('saveSchema', { dbName, schema }) if (this.$route.path !== '/editor') { this.$router.push('/editor') } diff --git a/src/components/Schema.vue b/src/components/Schema.vue index a43c82e..0bd281b 100644 --- a/src/components/Schema.vue +++ b/src/components/Schema.vue @@ -65,8 +65,8 @@ export default { methods: { changeDb () { this.$db.loadDb(this.$refs.dbfile.files[0]) - .then((schema) => { - this.$store.commit('saveSchema', schema) + .then(({ dbName, schema }) => { + this.$store.commit('saveSchema', { dbName, schema }) }) } } diff --git a/src/dataBase.js b/src/dataBase.js index ca02154..d2e31a6 100644 --- a/src/dataBase.js +++ b/src/dataBase.js @@ -1,11 +1,8 @@ -import store from '@/store' const worker = new Worker('js/worker.sql-wasm.js') export default { loadDb (file) { return new Promise((resolve, reject) => { - const dbName = file.name - store.commit('saveDbName', dbName) const f = file const r = new FileReader() r.onload = () => { @@ -18,7 +15,10 @@ export default { // on 'action: exec' completed worker.onmessage = event => { - resolve(event.data.results[0].values) + resolve({ + dbName: file.name, + schema: event.data.results[0].values + }) } worker.postMessage({ action: 'exec', sql: getSchemaSql }) } diff --git a/src/store/index.js b/src/store/index.js index 8a15892..3e558fd 100644 --- a/src/store/index.js +++ b/src/store/index.js @@ -53,7 +53,8 @@ export default new Vuex.Store({ predefinedQueries: [] }, mutations: { - saveSchema (state, schema) { + saveSchema (state, { dbName, schema }) { + state.dbName = dbName const parsedSchema = [] schema.forEach(item => { parsedSchema.push({ @@ -66,9 +67,6 @@ export default new Vuex.Store({ saveDbFile (state, file) { state.dbFile = file }, - saveDbName (state, name) { - state.dbName = name - }, addTab (state, tab) { // add new tab only if was not already opened if (!state.tabs.some(openedTab => openedTab.id === tab.id)) {