diff --git a/front/packages/primitives/src/links.tsx b/front/packages/primitives/src/links.tsx
index 46e0297f..fb1a65db 100644
--- a/front/packages/primitives/src/links.tsx
+++ b/front/packages/primitives/src/links.tsx
@@ -18,9 +18,17 @@
* along with Kyoo. If not, see .
*/
-import { ReactNode } from "react";
-import { Platform, TextProps } from "react-native";
-import { TextLink } from "solito/link";
+import { ComponentType, ReactNode } from "react";
+import {
+ Platform,
+ Pressable,
+ TextProps,
+ TouchableOpacity,
+ TouchableNativeFeedback,
+ View,
+ ViewProps,
+} from "react-native";
+import { LinkCore, TextLink } from "solito/link";
import { useYoshiki } from "yoshiki/native";
export const A = ({
@@ -46,3 +54,27 @@ export const A = ({
);
};
+
+export const Link = ({ href, children, ...props }: ViewProps & { href: string }) => {
+ return (
+ ({
+ web: View,
+ android: TouchableNativeFeedback,
+ ios: TouchableOpacity,
+ default: Pressable,
+ })}
+ componentProps={Platform.select
+ );
+};
diff --git a/front/packages/ui/src/browse/grid.tsx b/front/packages/ui/src/browse/grid.tsx
index d3ac4b9d..047a1382 100644
--- a/front/packages/ui/src/browse/grid.tsx
+++ b/front/packages/ui/src/browse/grid.tsx
@@ -18,8 +18,8 @@
* along with Kyoo. If not, see .
*/
-import { A, Skeleton, Poster, ts, P, SubP } from "@kyoo/primitives";
-import { Platform, View } from "react-native";
+import { Link, Skeleton, Poster, ts, P, SubP } from "@kyoo/primitives";
+import { Platform } from "react-native";
import { percent, px, Stylable, useYoshiki } from "yoshiki/native";
import { WithLoading } from "../fetch";
@@ -40,8 +40,8 @@ export const ItemGrid = ({
const { css } = useYoshiki();
return (
-
)}
-
+
);
};