"use client" import {useState} from "react" import type {AlertGroup} from "@mmapp/contracts/alerts" import {Input} from "@/components/ui/input" import {Button} from "@/components/ui/button" export function AlertsGroupForm({group,disabled,onSave,onDelete}:{group:AlertGroup;disabled:boolean;onSave:(patch:Partial)=>Promise;onDelete:()=>void}){ const [draft,setDraft]=useState>({}) const value={...group,...draft},dirty=Object.keys(draft).some(key=>value[key as keyof AlertGroup]!==group[key as keyof AlertGroup]) return
setDraft(previous=>({...previous,name:e.target.value}))} className="text-xs"/>
{dirty?

Изменения группы ещё не сохранены.

:null}
}