Skip to content
Snippets Groups Projects
Commit bbadb8bc authored by Kirill Stytsenko's avatar Kirill Stytsenko
Browse files

Format sql

Former-commit-id: 64ea01b8
parent cec5c3c2
Branches
Tags
1 merge request!23Sprint results
...@@ -24,7 +24,7 @@ ...@@ -24,7 +24,7 @@
</v-col> </v-col>
</v-row> </v-row>
<QBFilter v-if="table" v-model="clauses" :columns="selectItems && selectItems.map(s => s.name)" /> <QBFilter v-if="table" v-model="clauses" :columns="selectItems && selectItems.map(s => s.name)" />
<pre v-if="query.sql" v-text="query.sql" /> <pre v-if="query.formatted" v-text="query.formatted" />
</div> </div>
</template> </template>
......
...@@ -30,6 +30,7 @@ ...@@ -30,6 +30,7 @@
"node-fetch": "^2.6.1", "node-fetch": "^2.6.1",
"nuxt": "^2.12.2", "nuxt": "^2.12.2",
"nuxt-i18n": "^6.15.4", "nuxt-i18n": "^6.15.4",
"sql-formatter": "^4.0.2",
"vue-toast-notification": "^0.5.4", "vue-toast-notification": "^0.5.4",
"vuex-persist": "^3.1.3" "vuex-persist": "^3.1.3"
}, },
......
const { format } = require('sql-formatter');
const knex = require('knex')({ client: 'pg' }) const knex = require('knex')({ client: 'pg' })
export function buildQuery ({ table, select, clauses }) { export function buildQuery ({ table, select, clauses }) {
...@@ -15,9 +16,10 @@ export function buildQuery ({ table, select, clauses }) { ...@@ -15,9 +16,10 @@ export function buildQuery ({ table, select, clauses }) {
} }
} }
let sql let sql, formatted
try { try {
sql = builder.toQuery() sql = builder.toQuery()
formatted = format(sql)
} catch (e) { } catch (e) {
return { return {
error: e.message error: e.message
...@@ -26,6 +28,7 @@ export function buildQuery ({ table, select, clauses }) { ...@@ -26,6 +28,7 @@ export function buildQuery ({ table, select, clauses }) {
return { return {
table, table,
statements: builder._statements, statements: builder._statements,
sql sql,
formatted
} }
} }
...@@ -2327,6 +2327,11 @@ argparse@^1.0.7: ...@@ -2327,6 +2327,11 @@ argparse@^1.0.7:
dependencies: dependencies:
sprintf-js "~1.0.2" sprintf-js "~1.0.2"
argparse@^2.0.1:
version "2.0.1"
resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38"
integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==
arr-diff@^4.0.0: arr-diff@^4.0.0:
version "4.0.0" version "4.0.0"
resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz" resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz"
...@@ -9821,6 +9826,13 @@ sprintf-js@~1.0.2: ...@@ -9821,6 +9826,13 @@ sprintf-js@~1.0.2:
resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz" resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz"
integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=
sql-formatter@^4.0.2:
version "4.0.2"
resolved "https://registry.yarnpkg.com/sql-formatter/-/sql-formatter-4.0.2.tgz#2b359e5a4c611498d327b9659da7329d71724607"
integrity sha512-R6u9GJRiXZLr/lDo8p56L+OyyN2QFJPCDnsyEOsbdIpsnDKL8gubYFo7lNR7Zx7hfdWT80SfkoVS0CMaF/DE2w==
dependencies:
argparse "^2.0.1"
ssri@^6.0.1: ssri@^6.0.1:
version "6.0.1" version "6.0.1"
resolved "https://registry.yarnpkg.com/ssri/-/ssri-6.0.1.tgz" resolved "https://registry.yarnpkg.com/ssri/-/ssri-6.0.1.tgz"
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment