diff --git a/apps/web/src/components/ActivityFeed.tsx b/apps/web/src/components/ActivityFeed.tsx index 9e19c29..213108d 100644 --- a/apps/web/src/components/ActivityFeed.tsx +++ b/apps/web/src/components/ActivityFeed.tsx @@ -1,9 +1,9 @@ -import {Button} from '@plunk/ui'; +import {Button, IconSpinner} from '@plunk/ui'; import type {Activity, CursorPaginatedResponse} from '@plunk/types'; import {network} from '../lib/network'; import {ActivityItem} from './ActivityItem'; import {EmptyState} from './EmptyState'; -import {Activity as ActivityIcon, Loader2} from 'lucide-react'; +import {Activity as ActivityIcon} from 'lucide-react'; import {useCallback, useEffect, useMemo, useState} from 'react'; export interface ActivityFeedProps { @@ -169,7 +169,7 @@ export function ActivityFeed({typeFilter, dateRangeDays = 30, contactId}: Activi if (isLoading) { return (
- +
); } @@ -215,7 +215,7 @@ export function ActivityFeed({typeFilter, dateRangeDays = 30, contactId}: Activi diff --git a/apps/web/src/components/DomainsSettings.tsx b/apps/web/src/components/DomainsSettings.tsx index f299bfa..2449337 100644 --- a/apps/web/src/components/DomainsSettings.tsx +++ b/apps/web/src/components/DomainsSettings.tsx @@ -17,10 +17,11 @@ import { FormItem, FormLabel, FormMessage, + IconSpinner, Input, } from '@plunk/ui'; import {AnimatePresence, motion} from 'framer-motion'; -import {Check, CheckCircle2, ChevronDown, Copy, Globe, Loader2, RefreshCw, Trash2, XCircle} from 'lucide-react'; +import {Check, CheckCircle2, ChevronDown, Copy, Globe, RefreshCw, Trash2, XCircle} from 'lucide-react'; import {EmptyState} from './EmptyState'; import {useConfig} from '../lib/hooks/useConfig'; import {useAddDomain, useCheckDomainVerification, useDomains, useRemoveDomain} from '../lib/hooks/useDomains'; @@ -322,7 +323,7 @@ export function DomainsSettings({projectId}: DomainsSettingsProps) { {isLoading ? (
- +
) : !domains || domains.length === 0 ? ( {checkingVerification === domain.id ? ( - + ) : (cooldownSeconds[domain.id] ?? 0) > 0 ? ( {cooldownSeconds[domain.id]}s ) : ( diff --git a/apps/web/src/components/TeamSettings.tsx b/apps/web/src/components/TeamSettings.tsx index 292db15..e84838a 100644 --- a/apps/web/src/components/TeamSettings.tsx +++ b/apps/web/src/components/TeamSettings.tsx @@ -37,6 +37,7 @@ import { TableHead, TableHeader, TableRow, + IconSpinner, } from '@plunk/ui'; import {MembershipSchemas} from '@plunk/shared'; import {MoreVertical, Trash2, UserPlus} from 'lucide-react'; @@ -221,7 +222,7 @@ export function TeamSettings({projectId, currentUserRole, currentUserId}: TeamSe {isLoading ? (
-
+
) : members.length === 0 ? (
No members found
diff --git a/apps/web/src/components/TemplateSelectionDialog.tsx b/apps/web/src/components/TemplateSelectionDialog.tsx index f104245..b64076d 100644 --- a/apps/web/src/components/TemplateSelectionDialog.tsx +++ b/apps/web/src/components/TemplateSelectionDialog.tsx @@ -12,6 +12,7 @@ import { DialogDescription, DialogHeader, DialogTitle, + IconSpinner, Input, Label, } from '@plunk/ui'; @@ -205,25 +206,9 @@ export function TemplateSelectionDialog({open, onOpenChange, onSelectTemplate}:
{isLoading && (
-
- - - - -

Loading templates...

-
+
)} - {!isLoading && data?.data.length === 0 && ( ( - - - - -); export default function Login() { const {mutate: userMutate} = useUser(); @@ -296,7 +287,7 @@ export default function Login() {