'use client'; import { useCallback, useEffect, useMemo, useState } from 'react'; import { useSearchParams } from 'next/navigation'; import { Copy, ImageIcon, LayoutGrid, Loader2, RefreshCw, TextQuote, UserCircle2 } from 'lucide-react'; import { useAuth } from '@/components/id/auth-provider'; import { useToast } from '@/components/id/toast-provider'; import { Button } from '@/components/ui/button'; import { Input } from '@/components/ui/input'; import { fetchBot, getApiErrorMessage, revokeManagedBotToken, updateManagedBot, updateManagedBotProfile } from '@/lib/api'; import { parseComposerMenuButtonJson } from '@/lib/bot-menu-button'; function FieldTextarea({ label, hint, value, onChange, maxLength, rows = 3 }: { label: string; hint?: string; value: string; onChange: (value: string) => void; maxLength?: number; rows?: number; }) { return (
{hint ?

{hint}

: null}