{
  "version": 3,
  "sources": ["../../src/color-picker/color-copy-button.tsx"],
  "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { useCopyToClipboard } from '@wordpress/compose';\nimport { useState, useEffect, useRef } from '@wordpress/element';\nimport { copy, check } from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { Button } from '../button';\nimport Tooltip from '../tooltip';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport const ColorCopyButton = props => {\n  const {\n    color,\n    colorType\n  } = props;\n  const [copiedColor, setCopiedColor] = useState(null);\n  const copyTimerRef = useRef(undefined);\n  const copyRef = useCopyToClipboard(() => {\n    switch (colorType) {\n      case 'hsl':\n        {\n          return color.toHslString();\n        }\n      case 'rgb':\n        {\n          return color.toRgbString();\n        }\n      default:\n      case 'hex':\n        {\n          return color.toHex();\n        }\n    }\n  }, () => {\n    if (copyTimerRef.current) {\n      clearTimeout(copyTimerRef.current);\n    }\n    setCopiedColor(color.toHex());\n    copyTimerRef.current = setTimeout(() => {\n      setCopiedColor(null);\n      copyTimerRef.current = undefined;\n    }, 3000);\n  });\n  useEffect(() => {\n    // Clear copyTimerRef on component unmount.\n    return () => {\n      if (copyTimerRef.current) {\n        clearTimeout(copyTimerRef.current);\n      }\n    };\n  }, []);\n  const isCopied = copiedColor === color.toHex();\n  const label = isCopied ? __('Copied!') : __('Copy');\n  return /*#__PURE__*/_jsx(Tooltip, {\n    delay: 0,\n    hideOnClick: false,\n    text: label,\n    children: /*#__PURE__*/_jsx(Button, {\n      size: \"compact\",\n      \"aria-label\": label,\n      ref: copyRef,\n      icon: isCopied ? check : copy,\n      showTooltip: false\n    })\n  });\n};"],
  "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,qBAAmC;AACnC,qBAA4C;AAC5C,mBAA4B;AAC5B,kBAAmB;AAKnB,oBAAuB;AACvB,qBAAoB;AACpB,yBAA4B;AACrB,IAAM,kBAAkB,WAAS;AACtC,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,EACF,IAAI;AACJ,QAAM,CAAC,aAAa,cAAc,QAAI,yBAAS,IAAI;AACnD,QAAM,mBAAe,uBAAO,MAAS;AACrC,QAAM,cAAU,mCAAmB,MAAM;AACvC,YAAQ,WAAW;AAAA,MACjB,KAAK,OACH;AACE,eAAO,MAAM,YAAY;AAAA,MAC3B;AAAA,MACF,KAAK,OACH;AACE,eAAO,MAAM,YAAY;AAAA,MAC3B;AAAA,MACF;AAAA,MACA,KAAK,OACH;AACE,eAAO,MAAM,MAAM;AAAA,MACrB;AAAA,IACJ;AAAA,EACF,GAAG,MAAM;AACP,QAAI,aAAa,SAAS;AACxB,mBAAa,aAAa,OAAO;AAAA,IACnC;AACA,mBAAe,MAAM,MAAM,CAAC;AAC5B,iBAAa,UAAU,WAAW,MAAM;AACtC,qBAAe,IAAI;AACnB,mBAAa,UAAU;AAAA,IACzB,GAAG,GAAI;AAAA,EACT,CAAC;AACD,gCAAU,MAAM;AAEd,WAAO,MAAM;AACX,UAAI,aAAa,SAAS;AACxB,qBAAa,aAAa,OAAO;AAAA,MACnC;AAAA,IACF;AAAA,EACF,GAAG,CAAC,CAAC;AACL,QAAM,WAAW,gBAAgB,MAAM,MAAM;AAC7C,QAAM,QAAQ,eAAW,gBAAG,SAAS,QAAI,gBAAG,MAAM;AAClD,SAAoB,uCAAAA,KAAK,eAAAC,SAAS;AAAA,IAChC,OAAO;AAAA,IACP,aAAa;AAAA,IACb,MAAM;AAAA,IACN,UAAuB,uCAAAD,KAAK,sBAAQ;AAAA,MAClC,MAAM;AAAA,MACN,cAAc;AAAA,MACd,KAAK;AAAA,MACL,MAAM,WAAW,qBAAQ;AAAA,MACzB,aAAa;AAAA,IACf,CAAC;AAAA,EACH,CAAC;AACH;",
  "names": ["_jsx", "Tooltip"]
}
