diff --git a/ui/chen/components/QueryConsolePanel.vue b/ui/chen/components/QueryConsolePanel.vue index 62383f262..239268744 100644 --- a/ui/chen/components/QueryConsolePanel.vue +++ b/ui/chen/components/QueryConsolePanel.vue @@ -206,10 +206,9 @@ function handleSqlFileChange(event: Event) { emit("uploadSql", props.tab, file); } -async function openSnippetDialog() { - selectSnippetDialogOpen.value = true; +async function loadSnippetPage(page: number) { try { - await sqlSnippets.load(); + await sqlSnippets.load(page); } catch (cause) { addErrorToast({ title: "Failed to load SQL", @@ -218,6 +217,11 @@ async function openSnippetDialog() { } } +async function openSnippetDialog() { + selectSnippetDialogOpen.value = true; + await loadSnippetPage(1); +} + function openSaveSnippetDialog() { saveSnippetDialogOpen.value = true; } @@ -491,8 +495,12 @@ defineExpose({ editorSnapshot }); :snippets="sqlSnippets.snippets.value" :loading="sqlSnippets.loading.value" :deleting-id="sqlSnippets.deletingId.value" + :page="sqlSnippets.page.value" + :page-size="sqlSnippets.pageSize" + :total="sqlSnippets.total.value" @insert="insertSqlSnippet" @delete="deleteSqlSnippet" + @page-change="loadSnippetPage" /> diff --git a/ui/chen/components/SqlSnippetSelectDialog.vue b/ui/chen/components/SqlSnippetSelectDialog.vue index 66672340e..2c7e1d273 100644 --- a/ui/chen/components/SqlSnippetSelectDialog.vue +++ b/ui/chen/components/SqlSnippetSelectDialog.vue @@ -8,12 +8,16 @@ const props = defineProps<{ snippets: ChenSqlSnippet[]; loading: boolean; deletingId: string; + page: number; + pageSize: number; + total: number; }>(); const emit = defineEmits<{ "update:open": [open: boolean]; insert: [snippet: ChenSqlSnippet]; delete: [snippet: ChenSqlSnippet]; + pageChange: [page: number]; }>(); const deleteDialogOpen = ref(false); @@ -41,7 +45,7 @@ function confirmDelete() {