From d1f95f5b34a4570f1033a5289f0bd009d1aefb0c Mon Sep 17 00:00:00 2001 From: Corentin Thomasset Date: Sun, 24 Jul 2022 14:37:27 +0200 Subject: feat(new-tool): added an SQL prettifier and formatter --- src/tools/index.ts | 3 +- src/tools/sql-prettify/index.ts | 26 +++++ .../sql-prettify/sql-prettify.service.test.ts | 6 ++ src/tools/sql-prettify/sql-prettify.service.ts | 0 src/tools/sql-prettify/sql-prettify.vue | 112 +++++++++++++++++++++ 5 files changed, 146 insertions(+), 1 deletion(-) create mode 100644 src/tools/sql-prettify/index.ts create mode 100644 src/tools/sql-prettify/sql-prettify.service.test.ts create mode 100644 src/tools/sql-prettify/sql-prettify.service.ts create mode 100644 src/tools/sql-prettify/sql-prettify.vue (limited to 'src') diff --git a/src/tools/index.ts b/src/tools/index.ts index eeed10c..22613d3 100644 --- a/src/tools/index.ts +++ b/src/tools/index.ts @@ -21,6 +21,7 @@ import { tool as mathEvaluator } from './math-evaluator'; import { tool as qrCodeGenerator } from './qr-code-generator'; import { tool as randomPortGenerator } from './random-port-generator'; import { tool as romanNumeralConverter } from './roman-numeral-converter'; +import { tool as sqlPrettify } from './sql-prettify'; import { tool as textStatistics } from './text-statistics'; import { tool as tokenGenerator } from './token-generator'; import { tool as urlEncoder } from './url-encoder'; @@ -53,7 +54,7 @@ export const toolsByCategory: ToolCategory[] = [ { name: 'Development', icon: LockOpen, - components: [gitMemo, randomPortGenerator, crontabGenerator, jsonViewer], + components: [gitMemo, randomPortGenerator, crontabGenerator, jsonViewer, sqlPrettify], }, { name: 'Math', diff --git a/src/tools/sql-prettify/index.ts b/src/tools/sql-prettify/index.ts new file mode 100644 index 0000000..426845f --- /dev/null +++ b/src/tools/sql-prettify/index.ts @@ -0,0 +1,26 @@ +import { Database } from '@vicons/tabler'; +import { defineTool } from '../tool'; + +export const tool = defineTool({ + name: 'SQL prettify and format', + path: '/sql-prettify', + description: 'Format and prettify your SQL queries online (it supports various SQL dialects).', + keywords: [ + 'sql', + 'prettify', + 'beautify', + 'GCP BigQuery', + 'IBM DB2', + 'Apache Hive', + 'MariaDB', + 'MySQL', + 'Couchbase N1QL', + 'Oracle PL/SQL', + 'PostgreSQL', + 'Amazon Redshift', + 'Spark', + 'SQL Server Transact-SQL', + ], + component: () => import('./sql-prettify.vue'), + icon: Database, +}); diff --git a/src/tools/sql-prettify/sql-prettify.service.test.ts b/src/tools/sql-prettify/sql-prettify.service.test.ts new file mode 100644 index 0000000..aadcd84 --- /dev/null +++ b/src/tools/sql-prettify/sql-prettify.service.test.ts @@ -0,0 +1,6 @@ +import { expect, describe, it } from 'vitest'; +// import { } from './sql-prettify.service'; +// +// describe('sql-prettify', () => { +// +// }) \ No newline at end of file diff --git a/src/tools/sql-prettify/sql-prettify.service.ts b/src/tools/sql-prettify/sql-prettify.service.ts new file mode 100644 index 0000000..e69de29 diff --git a/src/tools/sql-prettify/sql-prettify.vue b/src/tools/sql-prettify/sql-prettify.vue new file mode 100644 index 0000000..8e05158 --- /dev/null +++ b/src/tools/sql-prettify/sql-prettify.vue @@ -0,0 +1,112 @@ + + + + + -- cgit v1.2.3