From 6b42f77ce03ffd732877e04b1493f541e84e65ea Mon Sep 17 00:00:00 2001 From: emirsassan Date: Mon, 21 Jul 2025 11:33:05 +0300 Subject: [PATCH] feat: open url in the system browser instead of launcher window --- .../desktop/capabilities/default.json | 4 ++- .../app/browser/package.$provider.$slug.tsx | 36 +++++++++++++++---- .../web_common/src/components/Tooltip.tsx | 4 +-- 3 files changed, 34 insertions(+), 10 deletions(-) diff --git a/apps/onelauncher/desktop/capabilities/default.json b/apps/onelauncher/desktop/capabilities/default.json index b4bfbae1..2c30d3fa 100644 --- a/apps/onelauncher/desktop/capabilities/default.json +++ b/apps/onelauncher/desktop/capabilities/default.json @@ -42,6 +42,8 @@ "path": "$DATA/OneLauncher" } ] - } + }, + "opener:allow-open-url", + "opener:default" ] } diff --git a/apps/onelauncher/frontend/src/routes/app/browser/package.$provider.$slug.tsx b/apps/onelauncher/frontend/src/routes/app/browser/package.$provider.$slug.tsx index 4bb30c43..f53350bb 100644 --- a/apps/onelauncher/frontend/src/routes/app/browser/package.$provider.$slug.tsx +++ b/apps/onelauncher/frontend/src/routes/app/browser/package.$provider.$slug.tsx @@ -1,4 +1,5 @@ import type { ClusterModel, ManagedPackage, ManagedUser, ManagedVersion, Paginated, Provider } from '@/bindings.gen'; +import type { JSX } from 'react'; import Modal from '@/components/overlay/Modal'; import { useBrowserContext, usePackageData, usePackageVersions } from '@/hooks/useBrowser'; import { useClusters } from '@/hooks/useCluster'; @@ -22,6 +23,21 @@ function includes(list: { includes: (arg0: TArray) => boole return list.includes(element as unknown as TArray); } +function CustomA({ href, children }: { href: string; children: any }) { + return ( + { + e.preventDefault(); + openUrl(href); + }} + > + {children} + + ); +} + interface PackageContextType { pkg: ManagedPackage | undefined; versions: Paginated | undefined; @@ -58,23 +74,29 @@ function RouteComponent() {
- {packageData.data?.body} + , + }} rehypePlugins={[rehypeRaw]} + > + {packageData.data?.body} + versions - + {packageData.data?.gallery.map(item => ( -
- - {item.title &&
{item.title}
} +
+ + {item.title &&
{item.title}
}
- - + + ))} diff --git a/packages/web_common/src/components/Tooltip.tsx b/packages/web_common/src/components/Tooltip.tsx index d67ff23e..4682673d 100644 --- a/packages/web_common/src/components/Tooltip.tsx +++ b/packages/web_common/src/components/Tooltip.tsx @@ -11,8 +11,8 @@ import { tv } from 'tailwind-variants'; export const tooltipVariants = tv({ base: [ - 'px-3 py-2 text-sm font-medium text-white bg-gray-900 rounded-lg shadow-lg', - 'border border-gray-700 max-w-xs z-50', + 'px-3 py-2 text-sm font-medium text-white bg-component-bg rounded-lg shadow-lg', + 'border border-component-border max-w-xs z-50', 'data-[entering]:animate-in data-[entering]:fade-in data-[entering]:zoom-in-95', 'data-[exiting]:animate-out data-[exiting]:fade-out data-[exiting]:zoom-out-95', ],