import { Button, DataColumn, DataTable, type DataTableProps, Dialog, DialogTrigger, Icon, IconLabel, Popover, Row, Text, } from '@umami/react-zen'; import Link from 'next/link'; import { Avatar } from '@/components/common/Avatar'; import { DateDistance } from '@/components/common/DateDistance'; import { TypeIcon } from '@/components/common/TypeIcon'; import { useFormat, useMessages, useNavigation } from '@/components/hooks'; import { Eye, FileText } from '@/components/icons'; import { EventData } from '@/components/metrics/EventData'; import { Lightning } from '@/components/svg'; export function EventsTable(props: DataTableProps) { const { formatMessage, labels } = useMessages(); const { updateParams } = useNavigation(); const { formatValue } = useFormat(); const renderLink = (label: string, hostname: string) => { return ( {label} ); }; return ( {(row: any) => { return ( : } label={formatMessage(row.eventName ? labels.triggeredEvent : labels.viewedPage)} /> {row.eventName || renderLink(row.urlPath, row.hostname)} {row.hasData > 0 && } ); }} {(row: any) => { return ( ); }} {(row: any) => ( {row.city ? `${row.city}, ` : ''} {formatValue(row.country, 'country')} )} {(row: any) => ( {formatValue(row.browser, 'browser')} )} {(row: any) => ( {formatValue(row.device, 'device')} )} {(row: any) => } ); } const PropertiesButton = props => { return ( ); };