# Record Activity Panel URL: /docs/web/components/record-activity-panel Record Activity Panel component. **Demo:** ```tsx 'use client'; // @custom-demo import { useState } from 'react'; import { RecordActivityPanel } from '@docyrus/ui/components/record-activity-panel'; import { Button } from '@docyrus/ui/primitives/ui/button'; import { cn } from '@docyrus/ui/primitives/lib/utils'; import { PropControls } from '@/components/prop-controls'; import { useDemoData } from '@/data/record-activity-panel-data'; export function RecordActivityPanelDemo() { const { props, controls, actions } = useDemoData(); const [open, setOpen] = useState(false); return (
); } ``` ## Installation ```bash pnpm dlx @docyrus/cli add @docyrus/ui-record-activity-panel ``` **Dependencies:** - [lucide-react](https://www.npmjs.com/package/lucide-react) ## Usage ```tsx import { RecordActivityPanel } from "@docyrus/ui/components/record-activity-panel"; import type { RecordActivity } from "@docyrus/ui/components/record-activity-panel"; const activities: RecordActivity[] = [ { id: "act-1", description: "Status changed from In Progress to In Review", shortDescription: "Status changed", icon: null, color: "#f59e0b", table_name: "tasks", operation: "STATUS_UPDATE", tenant_data_source_id: { id: "ds-1", name: "Tasks" }, created_on: "2025-12-17T09:30:00Z", created_by: "u-alice", created_by_user: { firstname: "Alice", lastname: "Johnson", name: "Alice Johnson", email: "alice@docyrus.com", mobile: null }, data_source_name: "Tasks", title: "Task #341" } ]; function Demo() { return ; } ``` ## API Reference | Prop | Type | Default | |------|------|---------| | `activities` | `RecordActivity[]` | — | | `isLoading` | `boolean` | `false` | | `className` | `string` | — | ## Components | Component | Description | |-----------|-------------| | `RecordActivityPanel` | Public export |