{"version":3,"sources":["../../../src/primitives/actionBar/ActionBarFeedbackPositive.tsx"],"sourcesContent":["\"use client\";\n\nimport { forwardRef, useCallback } from \"react\";\nimport { ActionButtonProps } from \"../../utils/createActionButton\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { useMessage, useMessageRuntime } from \"../../context\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\n\nconst useActionBarFeedbackPositive = () => {\n  const messageRuntime = useMessageRuntime();\n\n  const callback = useCallback(() => {\n    messageRuntime.submitFeedback({ type: \"positive\" });\n  }, [messageRuntime]);\n\n  return callback;\n};\n\nexport namespace ActionBarPrimitiveFeedbackPositive {\n  export type Element = HTMLButtonElement;\n  export type Props = ActionButtonProps<typeof useActionBarFeedbackPositive>;\n}\n\nexport const ActionBarPrimitiveFeedbackPositive = forwardRef<\n  ActionBarPrimitiveFeedbackPositive.Element,\n  ActionBarPrimitiveFeedbackPositive.Props\n>(({ onClick, disabled, ...props }, forwardedRef) => {\n  const isSubmitted = useMessage(\n    (u) => u.submittedFeedback?.type === \"positive\",\n  );\n  const callback = useActionBarFeedbackPositive();\n  return (\n    <Primitive.button\n      type=\"button\"\n      {...(isSubmitted ? { \"data-submitted\": \"true\" } : {})}\n      {...props}\n      ref={forwardedRef}\n      disabled={disabled || !callback}\n      onClick={composeEventHandlers(onClick, () => {\n        callback?.();\n      })}\n    />\n  );\n});\n\nActionBarPrimitiveFeedbackPositive.displayName =\n  \"ActionBarPrimitive.FeedbackPositive\";\n"],"mappings":";;;AAEA,SAAS,YAAY,mBAAmB;AAExC,SAAS,4BAA4B;AACrC,SAAS,YAAY,yBAAyB;AAC9C,SAAS,iBAAiB;AA0BtB;AAxBJ,IAAM,+BAA+B,MAAM;AACzC,QAAM,iBAAiB,kBAAkB;AAEzC,QAAM,WAAW,YAAY,MAAM;AACjC,mBAAe,eAAe,EAAE,MAAM,WAAW,CAAC;AAAA,EACpD,GAAG,CAAC,cAAc,CAAC;AAEnB,SAAO;AACT;AAOO,IAAM,qCAAqC,WAGhD,CAAC,EAAE,SAAS,UAAU,GAAG,MAAM,GAAG,iBAAiB;AACnD,QAAM,cAAc;AAAA,IAClB,CAAC,MAAM,EAAE,mBAAmB,SAAS;AAAA,EACvC;AACA,QAAM,WAAW,6BAA6B;AAC9C,SACE;AAAA,IAAC,UAAU;AAAA,IAAV;AAAA,MACC,MAAK;AAAA,MACJ,GAAI,cAAc,EAAE,kBAAkB,OAAO,IAAI,CAAC;AAAA,MAClD,GAAG;AAAA,MACJ,KAAK;AAAA,MACL,UAAU,YAAY,CAAC;AAAA,MACvB,SAAS,qBAAqB,SAAS,MAAM;AAC3C,mBAAW;AAAA,MACb,CAAC;AAAA;AAAA,EACH;AAEJ,CAAC;AAED,mCAAmC,cACjC;","names":[]}