diff --git a/package-lock.json b/package-lock.json index beeab25..6f9f51c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -50,6 +50,7 @@ "eslint-plugin-promise": "^4.2.1", "eslint-plugin-standard": "^4.0.0", "eslint-plugin-vue": "^6.2.2", + "flush-promises": "^1.0.2", "karma": "^3.1.4", "karma-firefox-launcher": "^2.1.0", "karma-webpack": "^4.0.2", @@ -10090,6 +10091,12 @@ "resolved": "https://registry.npmjs.org/flip-pixels/-/flip-pixels-1.0.2.tgz", "integrity": "sha512-oXbJGbjDnfJRWPC7Va38EFhd+A8JWE5/hCiKcK8qjCdbLj9DTpsq6MEudwpRTH+V4qq+Jw7d3pUgQdSr3x3mTA==" }, + "node_modules/flush-promises": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/flush-promises/-/flush-promises-1.0.2.tgz", + "integrity": "sha512-G0sYfLQERwKz4+4iOZYQEZVpOt9zQrlItIxQAAYAWpfby3gbHrx0osCHz5RLl/XoXevXk0xoN4hDFky/VV9TrA==", + "dev": true + }, "node_modules/flush-write-stream": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", @@ -33658,6 +33665,12 @@ "resolved": "https://registry.npmjs.org/flip-pixels/-/flip-pixels-1.0.2.tgz", "integrity": "sha512-oXbJGbjDnfJRWPC7Va38EFhd+A8JWE5/hCiKcK8qjCdbLj9DTpsq6MEudwpRTH+V4qq+Jw7d3pUgQdSr3x3mTA==" }, + "flush-promises": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/flush-promises/-/flush-promises-1.0.2.tgz", + "integrity": "sha512-G0sYfLQERwKz4+4iOZYQEZVpOt9zQrlItIxQAAYAWpfby3gbHrx0osCHz5RLl/XoXevXk0xoN4hDFky/VV9TrA==", + "dev": true + }, "flush-write-stream": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", diff --git a/package.json b/package.json index a473704..f7c0f8d 100644 --- a/package.json +++ b/package.json @@ -51,6 +51,7 @@ "eslint-plugin-promise": "^4.2.1", "eslint-plugin-standard": "^4.0.0", "eslint-plugin-vue": "^6.2.2", + "flush-promises": "^1.0.2", "karma": "^3.1.4", "karma-firefox-launcher": "^2.1.0", "karma-webpack": "^4.0.2", diff --git a/src/components/Splitpanes/index.vue b/src/components/Splitpanes/index.vue index 1f30746..1b3baeb 100644 --- a/src/components/Splitpanes/index.vue +++ b/src/components/Splitpanes/index.vue @@ -75,14 +75,23 @@ export default { props: { horizontal: { type: Boolean, default: false }, before: { type: Object }, - after: { type: Object } + after: { type: Object }, + default: { + type: Object, + default: () => { + return { + before: 50, + after: 50 + } + } + } }, data () { return { container: null, paneBefore: this.before, paneAfter: this.after, - beforeMinimising: { + beforeMinimising: !this.after.size || !this.before.size ? this.default : { before: this.before.size, after: this.after.size }, diff --git a/src/lib/database/index.js b/src/lib/database/index.js index bb12456..4232ed1 100644 --- a/src/lib/database/index.js +++ b/src/lib/database/index.js @@ -77,7 +77,7 @@ class Database { } this.dbName = file ? fu.getFileName(file) : 'database' - this.refreshSchema() + await this.refreshSchema() events.send('database.import', file ? file.size : 0, { from: file ? 'sqlite' : 'none', diff --git a/src/lib/tab.js b/src/lib/tab.js index f1ab8ee..154695b 100644 --- a/src/lib/tab.js +++ b/src/lib/tab.js @@ -22,6 +22,7 @@ export default class Tab { table: 'bottom', dataView: 'hidden' } + this.maximize = inquiry.maximize this.isSaved = !!inquiry.id this.state = state diff --git a/src/router.js b/src/router.js index b2f4c25..4832d23 100644 --- a/src/router.js +++ b/src/router.js @@ -4,6 +4,7 @@ import Workspace from '@/views/Main/Workspace' import Inquiries from '@/views/Main/Inquiries' import Welcome from '@/views/Welcome' import Main from '@/views/Main' +import LoadView from '@/views/LoadView' import store from '@/store' import database from '@/lib/database' @@ -31,6 +32,11 @@ const routes = [ component: Inquiries } ] + }, + { + path: '/load', + name: 'Load', + component: LoadView } ] @@ -39,7 +45,7 @@ const router = new VueRouter({ }) router.beforeEach(async (to, from, next) => { - if (!store.state.db) { + if (!store.state.db && to.name !== 'Load') { const newDb = database.getNewDatabase() await newDb.loadDb() store.commit('setDb', newDb) diff --git a/src/views/LoadView.vue b/src/views/LoadView.vue new file mode 100644 index 0000000..872ed0c --- /dev/null +++ b/src/views/LoadView.vue @@ -0,0 +1,188 @@ + + + + + diff --git a/src/views/Main/Workspace/Tabs/Tab/index.vue b/src/views/Main/Workspace/Tabs/Tab/index.vue index 333e469..2a98dac 100644 --- a/src/views/Main/Workspace/Tabs/Tab/index.vue +++ b/src/views/Main/Workspace/Tabs/Tab/index.vue @@ -3,8 +3,9 @@