"use client"; import { forwardRef } from "react"; import type { ActionButtonProps } from "../../utils/createActionButton"; import { composeEventHandlers } from "@radix-ui/primitive"; import { Primitive } from "../../utils/Primitive"; import { useAuiState } from "@assistant-ui/store"; import { useActionBarFeedbackNegative as useActionBarFeedbackNegativeBehavior } from "@assistant-ui/core/react"; const useActionBarFeedbackNegative = () => { const { submit } = useActionBarFeedbackNegativeBehavior(); return submit; }; export namespace ActionBarPrimitiveFeedbackNegative { export type Element = HTMLButtonElement; export type Props = ActionButtonProps; } export const ActionBarPrimitiveFeedbackNegative = forwardRef< ActionBarPrimitiveFeedbackNegative.Element, ActionBarPrimitiveFeedbackNegative.Props >(({ onClick, disabled, ...props }, forwardedRef) => { const isSubmitted = useAuiState( (s) => s.message.metadata.submittedFeedback?.type === "negative", ); const callback = useActionBarFeedbackNegative(); return ( { callback?.(); })} /> ); }); ActionBarPrimitiveFeedbackNegative.displayName = "ActionBarPrimitive.FeedbackNegative";