{"version":3,"sources":["../../../src/primitives/composer/ComposerRoot.tsx"],"sourcesContent":["\"use client\";\n\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport {\n  type ElementRef,\n  type FormEvent,\n  forwardRef,\n  ComponentPropsWithoutRef,\n} from \"react\";\nimport { useComposerSend } from \"../../primitive-hooks\";\n\nexport type ComposerPrimitiveRootProps = ComposerPrimitiveRoot.Props;\n\nexport namespace ComposerPrimitiveRoot {\n  export type Element = ElementRef<typeof Primitive.form>;\n  export type Props = ComponentPropsWithoutRef<typeof Primitive.form>;\n}\n\nexport const ComposerPrimitiveRoot = forwardRef<\n  ComposerPrimitiveRoot.Element,\n  ComposerPrimitiveRoot.Props\n>(({ onSubmit, ...rest }, forwardedRef) => {\n  const send = useComposerSend();\n\n  const handleSubmit = (e: FormEvent) => {\n    e.preventDefault();\n\n    if (!send) return;\n    send();\n  };\n\n  return (\n    <Primitive.form\n      {...rest}\n      ref={forwardedRef}\n      onSubmit={composeEventHandlers(onSubmit, handleSubmit)}\n    />\n  );\n});\n\nComposerPrimitiveRoot.displayName = \"ComposerPrimitive.Root\";\n"],"mappings":";;;AAEA,SAAS,4BAA4B;AACrC,SAAS,iBAAiB;AAC1B;AAAA,EAGE;AAAA,OAEK;AACP,SAAS,uBAAuB;AAuB5B;AAdG,IAAM,wBAAwB,WAGnC,CAAC,EAAE,UAAU,GAAG,KAAK,GAAG,iBAAiB;AACzC,QAAM,OAAO,gBAAgB;AAE7B,QAAM,eAAe,CAAC,MAAiB;AACrC,MAAE,eAAe;AAEjB,QAAI,CAAC,KAAM;AACX,SAAK;AAAA,EACP;AAEA,SACE;AAAA,IAAC,UAAU;AAAA,IAAV;AAAA,MACE,GAAG;AAAA,MACJ,KAAK;AAAA,MACL,UAAU,qBAAqB,UAAU,YAAY;AAAA;AAAA,EACvD;AAEJ,CAAC;AAED,sBAAsB,cAAc;","names":[]}