{"version":3,"file":"DisabledReason.cjs","sources":["../../../src/components/Button/DisabledReason.tsx"],"sourcesContent":["import { type FC, type FunctionComponent, type JSX, type ReactNode, memo, useMemo } from 'react'\nimport { tv } from 'tailwind-variants'\n\nimport { FaCircleInfoIcon } from '../Icon'\nimport { Tooltip } from '../Tooltip'\n\ntype Props = {\n  button: JSX.Element\n  disabledReason: {\n    icon?: FunctionComponent\n    message: ReactNode\n  }\n}\n\nconst classNameGenerator = tv({\n  slots: {\n    wrapper: ['smarthr-ui-Button-disabledWrapper', 'shr-inline-flex shr-items-center shr-gap-0.25'],\n    tooltip: [\n      'shr-overflow-y-visible',\n      /* Tooltip との距離を変えずに反応範囲を広げるために negative space を使う */\n      '[&_.smarthr-ui-Icon]:-shr-m-0.25',\n      /* global style��どでborder-boxが適用されている場合表示崩れを起こす為、content-boxを指定する */\n      '[&_.smarthr-ui-Icon]:shr-box-content',\n      '[&_.smarthr-ui-Icon]:shr-p-0.25',\n      '[&_.smarthr-ui-Icon]:shr-text-grey',\n    ],\n  },\n})\n\nexport const DisabledReason: FC<Props> = ({ button, disabledReason }) => {\n  const classNames = useMemo(() => {\n    const { wrapper, tooltip } = classNameGenerator()\n\n    return {\n      wrapper: wrapper(),\n      tooltip: tooltip(),\n    }\n  }, [])\n\n  return (\n    <div className={classNames.wrapper}>\n      {button}\n      <TooltipIcon\n        icon={disabledReason.icon}\n        message={disabledReason.message}\n        className={classNames.tooltip}\n      />\n    </div>\n  )\n}\n\nconst TooltipIcon = memo<{\n  icon?: FunctionComponent\n  message: ReactNode\n  className: string\n}>(({ icon, message, className }) => {\n  const DisabledReasonIcon = icon ?? FaCircleInfoIcon\n\n  return (\n    <Tooltip message={message} triggerType=\"icon\" className={className}>\n      <DisabledReasonIcon />\n    </Tooltip>\n  )\n})\n"],"names":["tv","useMemo","_jsxs","_jsx","memo","FaCircleInfoIcon","Tooltip"],"mappings":";;;;;;;;;;AAcA,MAAM,kBAAkB,GAAGA,QAAE,CAAC;AAC5B,IAAA,KAAK,EAAE;AACL,QAAA,OAAO,EAAE,CAAC,mCAAmC,EAAE,+CAA+C,CAAC;AAC/F,QAAA,OAAO,EAAE;YACP,wBAAwB;;YAExB,kCAAkC;;YAElC,sCAAsC;YACtC,iCAAiC;YACjC,oCAAoC;AACrC,SAAA;AACF,KAAA;AACF,CAAA,CAAC;AAEK,MAAM,cAAc,GAAc,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,KAAI;AACtE,IAAA,MAAM,UAAU,GAAGC,aAAO,CAAC,MAAK;QAC9B,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,kBAAkB,EAAE;QAEjD,OAAO;YACL,OAAO,EAAE,OAAO,EAAE;YAClB,OAAO,EAAE,OAAO,EAAE;SACnB;IACH,CAAC,EAAE,EAAE,CAAC;AAEN,IAAA,QACEC,eAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,UAAU,CAAC,OAAO,EAAA,QAAA,EAAA,CAC/B,MAAM,EACPC,cAAA,CAAC,WAAW,EAAA,EACV,IAAI,EAAE,cAAc,CAAC,IAAI,EACzB,OAAO,EAAE,cAAc,CAAC,OAAO,EAC/B,SAAS,EAAE,UAAU,CAAC,OAAO,EAAA,CAC7B,CAAA,EAAA,CACE;AAEV;AAEA,MAAM,WAAW,GAAGC,UAAI,CAIrB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,KAAI;AAClC,IAAA,MAAM,kBAAkB,GAAG,IAAI,IAAIC,uCAAgB;IAEnD,QACEF,eAACG,kCAAO,EAAA,EAAC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAC,MAAM,EAAC,SAAS,EAAE,SAAS,EAAA,QAAA,EAChEH,eAAC,kBAAkB,EAAA,EAAA,CAAG,EAAA,CACd;AAEd,CAAC,CAAC;;;;"}