/**
 * Skipped minification because the original files appears to be already minified.
 * Original file: /npm/@leafygreen-ui/copyable@12.0.3/dist/umd/index.js
 *
 * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
 */
!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("react"),require("clipboard"),require("@leafygreen-ui/button"),require("@leafygreen-ui/hooks"),require("@leafygreen-ui/icon/dist/Copy"),require("@leafygreen-ui/leafygreen-provider"),require("@leafygreen-ui/tokens"),require("@leafygreen-ui/tooltip"),require("@leafygreen-ui/typography"),require("polished"),require("@leafygreen-ui/emotion"),require("@leafygreen-ui/lib"),require("@leafygreen-ui/palette")):"function"==typeof define&&define.amd?define(["exports","react","clipboard","@leafygreen-ui/button","@leafygreen-ui/hooks","@leafygreen-ui/icon/dist/Copy","@leafygreen-ui/leafygreen-provider","@leafygreen-ui/tokens","@leafygreen-ui/tooltip","@leafygreen-ui/typography","polished","@leafygreen-ui/emotion","@leafygreen-ui/lib","@leafygreen-ui/palette"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self)["@leafygreen-ui/copyable"]={},e.React,e.ClipboardJS,e.leafyGreenButton,e.leafyGreenHooks,e.leafyGreenIconCopy,e.leafyGreenLeafygreenProvider,e.leafyGreenTokens,e.leafyGreenTooltip,e.leafyGreenTypography,e.polished,e.leafyGreenEmotion,e.leafyGreenLib,e.leafyGreenPalette)}(this,function(e,n,r,t,o,a,i,l,u,s,c,f,d,p){"use strict";function y(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var g=y(n),h=y(r),b=y(a);function m(e,n){n>e.length&&(n=e.length);for(var r=0,t=Array(n);r<n;r++)t[r]=e[r];return t}function v(e,n,r){return(n=function(e){var n=function(e,n){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var t=r.call(e,n);if("object"!=typeof t)return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e,"string");return"symbol"==typeof n?n:n+""}(n))in e?Object.defineProperty(e,n,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[n]=r,e}function x(e,n){return function(e){if(Array.isArray(e))return e}(e)||function(e,n){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var t,o,a,i,l=[],u=!0,s=!1;try{if(a=(r=r.call(e)).next,0===n);else for(;!(u=(t=a.call(r)).done)&&(l.push(t.value),l.length!==n);u=!0);}catch(e){s=!0,o=e}finally{try{if(!u&&null!=r.return&&(i=r.return(),Object(i)!==i))return}finally{if(s)throw o}}return l}}(e,n)||function(e,n){if(e){if("string"==typeof e)return m(e,n);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?m(e,n):void 0}}(e,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function w(e,n){return n||(n=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(n)}}))}var k,S,z,C,T,B,E,j,q,M,N,G,L,D,O,P,A,F,I={Default:"default",Large:"large"},H=f.css(k||(k=w(["\n  position: relative;\n  display: grid;\n  grid-auto-flow: column;\n  grid-template-columns: 1fr auto;\n  grid-template-areas: 'code button';\n  height: 48px;\n  width: 400px;\n  margin: 2px 0;\n"]))),R=f.css(S||(S=w(["\n  height: 36px;\n"]))),J=f.css(z||(z=w(["\n  overflow: hidden;\n  border-radius: 12px;\n"]))),U=v(v({},d.Theme.Light,f.css(C||(C=w(["\n    border-radius: 6px;\n    border: 1px solid ",";\n  "])),p.palette.gray.light2)),d.Theme.Dark,f.css(T||(T=w(["\n    border-radius: 6px;\n    border: 1px solid ",";\n  "])),p.palette.gray.dark1)),W=function(e){var n=e.className,r=e.showCopyButton,t=e.theme;return f.cx(H,v(v(v({},R,r),U[t],!r),J,!r),n)},_=f.css(B||(B=w(["\n  grid-area: code;\n  display: inline-flex;\n  align-items: center;\n  height: 100%;\n  width: 100%;\n  font-family: ",";\n  border: 1px solid;\n  border-right: unset;\n  border-radius: 6px 0 0 6px;\n  padding-left: 12px;\n  white-space: nowrap;\n  overflow: auto;\n"])),l.fontFamilies.code),$=v(v({},d.Theme.Light,f.css(E||(E=w(["\n    color: ",";\n    background-color: ",";\n    border-color: ",";\n  "])),p.palette.black,p.palette.gray.light3,p.palette.gray.light2)),d.Theme.Dark,f.css(j||(j=w(["\n    color: ",";\n    background-color: ",";\n    border-color: ",";\n  "])),p.palette.gray.light2,p.palette.black,p.palette.gray.dark1)),K=f.css(q||(q=w(["\n  border: 0;\n"]))),Q=v(v({},I.Default,f.css(M||(M=w(["\n    font-size: ","px;\n    line-height: ","px;\n  "])),l.typeScales.code1.fontSize,l.typeScales.code1.lineHeight)),I.Large,f.css(N||(N=w(["\n    font-size: ","px;\n    line-height: ","px;\n  "])),l.typeScales.code2.fontSize,l.typeScales.code2.lineHeight)),V=f.css(G||(G=w(["\n  font-size: 18px;\n  line-height: 24px;\n"]))),X=v(v({},I.Default,s.labelTypeScaleStyles[l.BaseFontSize.Body1]),I.Large,s.labelTypeScaleStyles[l.BaseFontSize.Body2]),Y=function(e){var n=e.size,r=e.showCopyButton;return f.cx(X[n],v({},V,!r))},Z=f.css(L||(L=w(["\n  grid-area: button;\n  position: relative;\n  display: inline-block;\n  height: 100%;\n"]))),ee=f.css(D||(D=w(["\n  &::before {\n    content: '';\n    display: block;\n    position: absolute;\n    height: calc(100% - 6px);\n    width: 16px;\n    left: 0px;\n    top: 3px;\n    border-radius: 100%;\n    transition: box-shadow ","ms ease-in-out;\n  }\n"])),l.transitionDuration.faster),ne=function(e){var n=e.theme,r=e.size,t=e.showCopyButton;return f.cx(_,$[n],Q[r],v({},K,!t))},re=v(v({},d.Theme.Light,f.css(O||(O=w(["\n    &::before {\n      box-shadow: 0 0 10px 0 ",";\n    }\n\n    &:hover:before {\n      box-shadow: 0 0 12px 0 ",";\n    }\n  "])),c.transparentize(.65,p.palette.gray.dark1),c.transparentize(.6,p.palette.gray.dark1))),d.Theme.Dark,f.css(P||(P=w(["\n    &::before {\n      box-shadow: -10px 0 10px 0 ",";\n    }\n\n    &:hover:before {\n      box-shadow: -12px 0 10px 0 ",";\n    }\n  "])),c.transparentize(.4,p.palette.black),c.transparentize(.4,p.palette.black))),te=function(e){var n=e.theme,r=e.isOverflowed;return f.cx(Z,v(v({},ee,r),re[n],r))},oe=f.css(A||(A=w(["\n  height: 100%;\n  border-radius: 0 6px 6px 0;\n\n  // The ripple element\n  & > :first-child {\n    border-radius: 0 6px 6px 0;\n  }\n"]))),ae=f.css(F||(F=w(["\n  padding-right: 6px;\n"])));function ie(e){var r,a,c=e.children,f=e.className,d=e.copyable,p=void 0===d||d,y=e.darkMode,m=e.description,v=e.label,w=e.onCopy,k=e.size,S=e.wrapperClassName,z=i.useDarkMode(y),C=z.theme,T=z.darkMode,B=x(n.useState(!1),2),E=B[0],j=B[1],q=x(n.useState(!1),2),M=q[0],N=q[1],G=x(n.useState(null),2),L=G[0],D=G[1],O=n.useRef(null),P=i.usePopoverPortalContainer().portalContainer,A=s.useUpdatedBaseFontSize(),F=n.useMemo(function(){return k||(A===l.BaseFontSize.Body1?I.Default:I.Large)},[k,A]);n.useEffect(function(){N(p&&h.default.isSupported())},[p]);var H=o.useIdAllocator({prefix:"code"}),R=!!O.current&&(null===(r=O.current)||void 0===r?void 0:r.scrollWidth)>(null===(a=O.current)||void 0===a?void 0:a.clientWidth);return n.useEffect(function(){if(L){var e=new h.default(L,{text:function(){return c},container:P});if(e.on("success",function(e){null==w||w(e)}),e.on("error",function(e){null==w||w(e)}),E){var n=setTimeout(function(){j(!1)},1500);return function(){return clearTimeout(n)}}return function(){return e.destroy()}}},[L,c,E,w,P]),g.default.createElement("div",{className:S},v&&g.default.createElement(s.Label,{darkMode:T,htmlFor:H,className:Y({size:F,showCopyButton:M})},v),m&&g.default.createElement(s.Description,{darkMode:T,className:Y({size:F,showCopyButton:M})},m),g.default.createElement("div",{className:W({showCopyButton:M,theme:C,className:f})},g.default.createElement("code",{id:H,ref:O,className:ne({theme:C,size:F,showCopyButton:M})},c),g.default.createElement("span",{className:te({theme:C,isOverflowed:R})},M&&g.default.createElement(u.Tooltip,{open:E,darkMode:T,align:u.Align.Top,justify:u.Justify.Middle,trigger:g.default.createElement(t.Button,{ref:D,variant:"default",darkMode:T,className:oe,onClick:function(){j(!0)},leftGlyph:g.default.createElement(b.default,{size:"large",className:ae})},"Copy"),triggerEvent:u.TriggerEvent.Click,renderMode:u.RenderMode.TopLayer},"Copied!"))))}ie.displayName="Copyable",e.Copyable=ie,e.Size=I,e.default=ie,Object.defineProperty(e,"__esModule",{value:!0})});
//# sourceMappingURL=index.js.map
