visual adjustments to logo empty state and profile dropdown

This commit is contained in:
miloschwartz
2026-09-11 10:37:54 -04:00
committed by Owen
parent e2609f1a0d
commit 0ea4a5fb3d
8 changed files with 34 additions and 25 deletions
+3 -3
View File
@@ -60,10 +60,10 @@ export default function LocaleSwitcherSelect({
onClick={() => onChange(item.value)}
className="flex items-center gap-2"
>
{item.value === defaultValue && (
<Check className="h-4 w-4" />
)}
<span>{item.label}</span>
{item.value === defaultValue && (
<Check className="ml-auto h-4 w-4" />
)}
</DropdownMenuItem>
))}
</DropdownMenuSubContent>
+5 -1
View File
@@ -26,6 +26,7 @@ import { useRouter } from "next/navigation";
import { useMemo, useState, useTransition } from "react";
import { useDebouncedCallback } from "use-debounce";
import ConfirmDeleteDialog from "./ConfirmDeleteDialog";
import CopyToClipboard from "./CopyToClipboard";
type OrgTableProps = {
orgs: AdminOrgRow[];
@@ -106,7 +107,10 @@ export default function OrgsTable({
{
accessorKey: "orgId",
friendlyName: t("orgId"),
header: () => <span className="p-3">{t("orgId")}</span>
header: () => <span className="p-3">{t("orgId")}</span>,
cell: ({ row }) => (
<CopyToClipboard text={row.original.orgId} isLink={false} />
)
},
{
accessorKey: "createdAt",
+3 -3
View File
@@ -182,12 +182,12 @@ export default function ProfileIcon() {
}
className="flex items-center gap-2"
>
{userTheme === themeOption && (
<Check className="h-4 w-4" />
)}
<span className="capitalize">
{t(themeOption)}
</span>
{userTheme === themeOption && (
<Check className="ml-auto h-4 w-4" />
)}
</DropdownMenuItem>
)
)}
+3 -3
View File
@@ -81,15 +81,15 @@ const Button = React.forwardRef<HTMLButtonElement, ButtonProps>(
<span className="absolute inset-0 flex items-center justify-center">
<span className="flex items-center gap-1.5">
<span
className="h-1 w-1 bg-current animate-dot-pulse"
className="h-1 w-1 rounded-full bg-current animate-dot-pulse"
style={{ animationDelay: "0ms" }}
/>
<span
className="h-1 w-1 bg-current animate-dot-pulse"
className="h-1 w-1 rounded-full bg-current animate-dot-pulse"
style={{ animationDelay: "200ms" }}
/>
<span
className="h-1 w-1 bg-current animate-dot-pulse"
className="h-1 w-1 rounded-full bg-current animate-dot-pulse"
style={{ animationDelay: "400ms" }}
/>
</span>
+10 -5
View File
@@ -24,7 +24,7 @@ export function DataTableEmptyState({
const placeholderRows = compact
? COMPACT_PLACEHOLDER_ROW_COUNT
: PLACEHOLDER_ROW_COUNT;
const minHeightClass = compact ? "min-h-[4.5rem]" : "min-h-[11rem]";
const minHeightClass = compact ? "min-h-20" : "min-h-[12.5rem]";
return (
<TableRow className="hidden sm:table-row hover:bg-transparent data-[state=selected]:bg-transparent">
@@ -33,18 +33,23 @@ export function DataTableEmptyState({
className={`relative w-full overflow-hidden ${minHeightClass}`}
>
<div
className="absolute inset-0 flex flex-col justify-start"
className="pointer-events-none absolute inset-0 flex flex-col justify-start opacity-50"
aria-hidden
>
{Array.from({ length: placeholderRows }).map((_, i) => (
<div key={i} className="h-10 shrink-0" />
<div
key={i}
className="flex h-10 shrink-0 items-center border-b border-border/60 px-4 last:border-b-0"
>
<div className="h-3.5 w-full rounded bg-muted/60" />
</div>
))}
</div>
<div
className={`relative flex w-full flex-col items-center justify-center px-4 ${
compact
? "min-h-[4.5rem] gap-3 py-4"
: "min-h-[11rem] gap-4 py-8"
? "min-h-20 gap-3 py-4"
: "min-h-[12.5rem] gap-4 py-8"
}`}
>
<p className="text-sm text-muted-foreground">