From 37135d50d54e3c4ec3406838c4abe8c9b841a10c Mon Sep 17 00:00:00 2001 From: Huakun Shen Date: Thu, 3 Apr 2025 13:26:18 -0400 Subject: [PATCH] feat: add Database Troubleshooter and Database Info page - Introduced a new "Database Troubleshooter" command in the built-in commands list, allowing users to navigate to the database info page. - Added a new Svelte page for "Database Info" that displays table sizes and row counts for the database, enhancing troubleshooting capabilities. - Updated the sidebar to include a link to the new "Database Info" page for easier access. --- apps/desktop/src/lib/cmds/builtin.ts | 13 ++ .../database-info/+page.svelte | 111 ++++++++++++++++++ .../routes/app/troubleshooters/sidebar.svelte | 5 + .../permissions/autogenerated/reference.md | 2 + 4 files changed, 131 insertions(+) create mode 100644 apps/desktop/src/routes/app/troubleshooters/database-info/+page.svelte diff --git a/apps/desktop/src/lib/cmds/builtin.ts b/apps/desktop/src/lib/cmds/builtin.ts index 40f54da..fa74d3f 100644 --- a/apps/desktop/src/lib/cmds/builtin.ts +++ b/apps/desktop/src/lib/cmds/builtin.ts @@ -161,6 +161,19 @@ export const rawBuiltinCmds: BuiltinCmd[] = [ }, keywords: ["extension", "window", "troubleshooter"] }, + { + name: "Database Troubleshooter", + icon: { + type: IconEnum.Iconify, + value: "devicon:sqlite" + }, + description: "", + function: async () => { + appState.clearSearchTerm() + goto(i18n.resolveRoute("/app/troubleshooters/database-info")) + }, + keywords: ["database", "troubleshooter"] + }, { name: "Help (Install Deno)", icon: { diff --git a/apps/desktop/src/routes/app/troubleshooters/database-info/+page.svelte b/apps/desktop/src/routes/app/troubleshooters/database-info/+page.svelte new file mode 100644 index 0000000..db81934 --- /dev/null +++ b/apps/desktop/src/routes/app/troubleshooters/database-info/+page.svelte @@ -0,0 +1,111 @@ + + +
+

Database Info

+ + Table Sizes + + + Table Name + Size + + + + {#each tableSizes as tableSize} + + {tableSize.table_name} + {prettyBytes(tableSize.size)} + + {/each} + + + + Table Rows + + + Table Name + Rows + + + + + Extensions + {tableRows.extensions} + + + Commands + {tableRows.commands} + + + Extension Data + {tableRows.extensionData} + + + +
diff --git a/apps/desktop/src/routes/app/troubleshooters/sidebar.svelte b/apps/desktop/src/routes/app/troubleshooters/sidebar.svelte index ab276f8..7c8d37c 100644 --- a/apps/desktop/src/routes/app/troubleshooters/sidebar.svelte +++ b/apps/desktop/src/routes/app/troubleshooters/sidebar.svelte @@ -31,6 +31,11 @@ title: "ORM", url: i18n.resolveRoute("/app/troubleshooters/orm"), icon: DB + }, + { + title: "Database Info", + url: i18n.resolveRoute("/app/troubleshooters/database-info"), + icon: DB } ] let currentItem = $state(items.find((item) => window.location.pathname === item.url)) diff --git a/packages/tauri-plugins/jarvis/permissions/autogenerated/reference.md b/packages/tauri-plugins/jarvis/permissions/autogenerated/reference.md index ddf14e4..06546b4 100644 --- a/packages/tauri-plugins/jarvis/permissions/autogenerated/reference.md +++ b/packages/tauri-plugins/jarvis/permissions/autogenerated/reference.md @@ -1,3 +1,4 @@ + ## Permission Table @@ -6,6 +7,7 @@ +
Description