"use client"; import type { ToolCallMessagePartComponent } from "@assistant-ui/react"; import { CornerDownLeftIcon, Pen } from "lucide-react"; import { useCallback, useEffect, useMemo, useState } from "react"; import { TextShimmerLoader } from "@/components/prompt-kit/loader"; import { Button } from "@/components/ui/button"; import { Input } from "@/components/ui/input"; import { Textarea } from "@/components/ui/textarea"; import { useHitlPhase } from "@/hooks/use-hitl-phase"; import { connectorsApiService } from "@/lib/apis/connectors-api.service"; import type { HitlDecision, InterruptResult } from "@/lib/hitl"; import { isInterruptResult, useHitlDecision } from "@/lib/hitl"; function ParamEditor({ params, onChange, disabled, }: { params: Record; onChange: (updated: Record) => void; disabled: boolean; }) { const entries = Object.entries(params); if (entries.length === 0) return null; return (
{entries.map(([key, value]) => { const strValue = value == null ? "" : String(value); const isLong = strValue.length > 120; const fieldId = `hitl-param-${key}`; return (
{isLong ? (