diff --git a/src-tauri/Cargo.lock b/src-tauri/Cargo.lock index b814be1b..f5751b8c 100644 --- a/src-tauri/Cargo.lock +++ b/src-tauri/Cargo.lock @@ -1543,8 +1543,8 @@ checksum = "a4ae5f15dda3c708c0ade84bfee31ccab44a3da4f88015ed22f63732abe300c8" [[package]] name = "data-studio-agent" -version = "0.1.8" -source = "git+https://github.com/geek-fun/data-studio-agent.git?tag=v0.1.8#504fe2d7aef2a8ce829f34a43620cafffbb902c8" +version = "0.1.9" +source = "git+https://github.com/geek-fun/data-studio-agent.git?tag=v0.1.9#7e6610bd421d5acbadf64558aa954bc27b175e38" dependencies = [ "async-openai", "async-trait", diff --git a/src-tauri/Cargo.toml b/src-tauri/Cargo.toml index 998d8b96..9c664b4f 100644 --- a/src-tauri/Cargo.toml +++ b/src-tauri/Cargo.toml @@ -88,7 +88,7 @@ log = "0.4" futures = "0.3" rand = "0.8" # data-studio-agent: pinned to latest release tag. -data-studio-agent = { git = "https://github.com/geek-fun/data-studio-agent.git", tag = "v0.1.8" } +data-studio-agent = { git = "https://github.com/geek-fun/data-studio-agent.git", tag = "v0.1.9" } # Archive extraction (JRE downloads) flate2 = "1.0" diff --git a/src/components/connections/ServerCard.vue b/src/components/connections/ServerCard.vue index e4223582..e492ca66 100644 --- a/src/components/connections/ServerCard.vue +++ b/src/components/connections/ServerCard.vue @@ -13,8 +13,9 @@ import { DropdownMenuTrigger, } from '@/components/ui/dropdown-menu' import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from '@/components/ui/tooltip' +import { ProBadge } from '@/components/upgrade' import { useDatabaseIcon } from '@/composables/useDatabaseIcon' -import { ConnectionStatus, DatabaseType, formatServerVersion, getConnectionStrategy } from '@/store' +import { ConnectionStatus, DatabaseType, formatServerVersion, getConnectionStrategy, useEntitlementStore } from '@/store' const props = defineProps<{ connection: ServerConnection @@ -31,6 +32,7 @@ const emit = defineEmits<{ }>() const { t } = useI18n() +const entitlementStore = useEntitlementStore() const { getDatabaseIcon, getDatabaseColor } = useDatabaseIcon() const statusColor = computed(() => { @@ -225,6 +227,20 @@ const connectTooltip = computed(() => SSL + + + + + + SSH + + + + +

SSH tunnel

+
+
+
diff --git a/src/components/connections/ServerFormDialog.vue b/src/components/connections/ServerFormDialog.vue index ba3fe8c7..748e7025 100644 --- a/src/components/connections/ServerFormDialog.vue +++ b/src/components/connections/ServerFormDialog.vue @@ -3,8 +3,10 @@ import type { OracleConnectionOptions, ServerConnection } from '@/store' import type { DatabaseFileAssessment } from '@/utils/databaseFiles' import { invoke } from '@tauri-apps/api/core' import { open as openDialog } from '@tauri-apps/plugin-dialog' +import { openUrl } from '@tauri-apps/plugin-opener' import { computed, ref, watch } from 'vue' import { useI18n } from 'vue-i18n' +import { UPGRADE_URL } from '@/common' import { Button } from '@/components/ui/button' import { SearchableSelect } from '@/components/ui/combobox' import { Dialog, DialogContent, DialogDescription, DialogTitle } from '@/components/ui/dialog' @@ -19,7 +21,6 @@ import { SelectValue, } from '@/components/ui/select' import { Tabs, TabsContent, TabsList, TabsTrigger } from '@/components/ui/tabs' -import { openUpgradeDialog } from '@/components/upgrade' import { useDatabaseIcon } from '@/composables/useDatabaseIcon' import { useDownloadEvents } from '@/composables/useDownloadEvents' import { toast } from '@/composables/useNotifications' @@ -191,7 +192,8 @@ async function runStep(step: StepDef): Promise { function toggleSsh(checked: boolean) { if (checked && !entitlementStore.isLocalUltimate) { - openUpgradeDialog('ssh_tunnel') + // usage-side feature — send to the pricing site (matches dockit) + openUrl(UPGRADE_URL) return } if (!formData.value.sshTunnel) { diff --git a/src/pages/ConnectionsPage.vue b/src/pages/ConnectionsPage.vue index d6fcb613..48449178 100644 --- a/src/pages/ConnectionsPage.vue +++ b/src/pages/ConnectionsPage.vue @@ -1,8 +1,10 @@