diff --git a/apps/dashboard/src/@/components/ui/table.stories.tsx b/apps/dashboard/src/@/components/ui/table.stories.tsx index 82e0fd26cf4..dac92c863af 100644 --- a/apps/dashboard/src/@/components/ui/table.stories.tsx +++ b/apps/dashboard/src/@/components/ui/table.stories.tsx @@ -9,7 +9,9 @@ import { TableRow, } from "@/components/ui/table"; import type { Meta, StoryObj } from "@storybook/react"; +import Link from "next/link"; import { BadgeContainer, mobileViewport } from "../../../stories/utils"; +import { cn } from "../../lib/utils"; import { Badge } from "./badge"; const meta = { @@ -41,6 +43,10 @@ function Component() { + + + + @@ -90,6 +96,7 @@ const invoices: Invoice[] = [ function TableDemo(props: { footer?: boolean; + linkBox?: boolean; }) { return ( @@ -104,8 +111,21 @@ function TableDemo(props: { {invoices.map((invoice) => ( - - {invoice.invoice} + + + + {invoice.invoice} + + {invoice.paymentStatus} diff --git a/apps/dashboard/src/@/components/ui/table.tsx b/apps/dashboard/src/@/components/ui/table.tsx index 8c175be6d07..7e0cdeb15d1 100644 --- a/apps/dashboard/src/@/components/ui/table.tsx +++ b/apps/dashboard/src/@/components/ui/table.tsx @@ -63,12 +63,19 @@ TableFooter.displayName = "TableFooter"; const TableRow = React.forwardRef< HTMLTableRowElement, - React.HTMLAttributes ->(({ className, ...props }, ref) => ( + React.HTMLAttributes & { + /** + * Contain the absolutely position elements inside the row with position:relative + transform:translate(0) + * transform:translate(0) is required because position:relative on tr element does not work on webkit + */ + linkBox?: boolean; + } +>(({ className, linkBox, ...props }, ref) => ( + {favoriteButton} {/* Name */} diff --git a/apps/dashboard/src/app/(dashboard)/profile/[addressOrEns]/components/PublishedContractTable.tsx b/apps/dashboard/src/app/(dashboard)/profile/[addressOrEns]/components/PublishedContractTable.tsx index 73c042d2e3f..9ba2bd49322 100644 --- a/apps/dashboard/src/app/(dashboard)/profile/[addressOrEns]/components/PublishedContractTable.tsx +++ b/apps/dashboard/src/app/(dashboard)/profile/[addressOrEns]/components/PublishedContractTable.tsx @@ -190,7 +190,8 @@ function ContractTableRow(props: { return ( <> diff --git a/apps/dashboard/src/app/(dashboard)/trending/components/trending-table.tsx b/apps/dashboard/src/app/(dashboard)/trending/components/trending-table.tsx index c324184f95b..967a6670768 100644 --- a/apps/dashboard/src/app/(dashboard)/trending/components/trending-table.tsx +++ b/apps/dashboard/src/app/(dashboard)/trending/components/trending-table.tsx @@ -75,7 +75,8 @@ export function TrendingContractSection(props: { {props.topContracts.map((contract, index) => ( {/* Rank */} diff --git a/apps/dashboard/src/app/team/[team_slug]/(team)/~/ecosystem/[slug]/(active)/configuration/components/server/partners-table.tsx b/apps/dashboard/src/app/team/[team_slug]/(team)/~/ecosystem/[slug]/(active)/configuration/components/server/partners-table.tsx index a6122464abb..3144bb3095c 100644 --- a/apps/dashboard/src/app/team/[team_slug]/(team)/~/ecosystem/[slug]/(active)/configuration/components/server/partners-table.tsx +++ b/apps/dashboard/src/app/team/[team_slug]/(team)/~/ecosystem/[slug]/(active)/configuration/components/server/partners-table.tsx @@ -78,10 +78,8 @@ function PartnerRow(props: { return ( {props.partner.name} diff --git a/apps/dashboard/src/app/team/[team_slug]/(team)/~/engine/(general)/overview/engine-instances-table.tsx b/apps/dashboard/src/app/team/[team_slug]/(team)/~/engine/(general)/overview/engine-instances-table.tsx index b5a35f1444e..17bbce29d11 100644 --- a/apps/dashboard/src/app/team/[team_slug]/(team)/~/engine/(general)/overview/engine-instances-table.tsx +++ b/apps/dashboard/src/app/team/[team_slug]/(team)/~/engine/(general)/overview/engine-instances-table.tsx @@ -168,7 +168,8 @@ export const EngineInstancesTable: React.FC = ({ isDestructive: true, }, ]} - bodyRowClassName="hover:bg-muted/50 relative" + bodyRowClassName="hover:bg-muted/50" + bodyRowLinkBox /> {instanceToUpdate && ( diff --git a/apps/dashboard/src/components/contract-components/contract-table/index.tsx b/apps/dashboard/src/components/contract-components/contract-table/index.tsx index 3aaf3765ca2..de0ed68538e 100644 --- a/apps/dashboard/src/components/contract-components/contract-table/index.tsx +++ b/apps/dashboard/src/components/contract-components/contract-table/index.tsx @@ -54,7 +54,8 @@ export async function DeployableContractTable( {deployedContractMetadata.map((metadata, i) => { return ( diff --git a/apps/dashboard/src/components/contract-components/tables/deployed-contracts.tsx b/apps/dashboard/src/components/contract-components/tables/deployed-contracts.tsx index 09b32b504f0..f0b3a9509fe 100644 --- a/apps/dashboard/src/components/contract-components/tables/deployed-contracts.tsx +++ b/apps/dashboard/src/components/contract-components/tables/deployed-contracts.tsx @@ -358,7 +358,8 @@ const ContractTableRow = memo(({ row }: { row: Row }) => { {row.cells.map((cell, cellIndex) => { return ( diff --git a/apps/dashboard/src/components/shared/TWTable.tsx b/apps/dashboard/src/components/shared/TWTable.tsx index 5cba685be59..34fad8125a0 100644 --- a/apps/dashboard/src/components/shared/TWTable.tsx +++ b/apps/dashboard/src/components/shared/TWTable.tsx @@ -55,6 +55,7 @@ type TWTableProps = { }; title: string; bodyRowClassName?: string; + bodyRowLinkBox?: boolean; }; export function TWTable(tableProps: TWTableProps) { @@ -174,6 +175,7 @@ export function TWTable(tableProps: TWTableProps) { } : {})} className={tableProps.bodyRowClassName} + linkBox={tableProps.bodyRowLinkBox} > {row.getVisibleCells().map((cell) => { return (