<!-- source-hash: e54e6fb6cb2d70638760dba85e7b09f8 -->
Common utility functions for TypeScript/React applications, providing essential helpers for styling, async operations, string manipulation, and object cloning.

## Key Components

- **`cn()`** - Merges and deduplicates Tailwind CSS class names using `clsx` and `tailwind-merge`
- **`delay()`** - Creates a Promise-based delay for async operations
- **`generateRandomString()`** - Generates cryptographically simple random strings for IDs or tokens
- **`truncateString()`** - Safely truncates strings with customizable suffix
- **`deepClone()`** - Performs deep cloning of objects using JSON serialization
- **`getSlackCommunityJoinUrl()`** - Retrieves Slack community URL from environment variables with fallback

## Usage Example

```typescript
import { cn, delay, generateRandomString, truncateString, deepClone, getSlackCommunityJoinUrl } from './common'

// Merge Tailwind classes (removes duplicates)
const buttonClass = cn('px-4 py-2 bg-blue-500', isActive && 'bg-blue-700', 'hover:bg-blue-600')

// Async delay
await delay(1000) // Wait 1 second

// Generate random ID
const sessionId = generateRandomString(12) // "aB3xY9mN4pQ1"

// Truncate long text
const preview = truncateString("This is a very long description...", 20) // "This is a very lo..."

// Deep clone object
const originalData = { user: { name: "John", settings: { theme: "dark" } } }
const clonedData = deepClone(originalData)

// Get Slack URL
const slackUrl = getSlackCommunityJoinUrl() // Returns env var or fallback URL
```