{
  "version": 3,
  "sources": ["ssg:https://framerusercontent.com/modules/Hj20QU19p80mpYsvesiZ/RfHh9MIwqlgi04HKZ3Qo/Clipboard.js"],
  "sourcesContent": ["import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { useCallback } from \"react\";\nimport { addPropertyControls, ControlType } from \"framer\";\nimport { motion } from \"framer-motion\";\nimport { defaultEvents, usePadding, useRadius, useFontControls } from \"https://framer.com/m/framer/default-utils.js@^0.45.0\"; /**\n                                                                                                                              * CLIPBOARD\n                                                                                                                              *\n                                                                                                                              * @framerIntrinsicWidth 90\n                                                                                                                              * @framerIntrinsicHeight 50\n                                                                                                                              *\n                                                                                                                              * @framerSupportedLayoutWidth any\n                                                                                                                              * @framerSupportedLayoutHeight any\n                                                                                                                              */\nexport default function Clipboard(props) {\n  const {\n    label,\n    content,\n    fill,\n    color,\n    style,\n    onClick,\n    font,\n    hoverOptions,\n    ...rest\n  } = props;\n  const deprecatedFont = useFontControls({\n    fontWeight: 500,\n    ...rest\n  });\n  const borderRadius = useRadius(props);\n  const paddingValue = usePadding(props);\n  const handleClick = useCallback(() => {\n    var ref;\n    (ref = navigator.clipboard) === null || ref === void 0 ? void 0 : ref.writeText(content);\n    onClick === null || onClick === void 0 ? void 0 : onClick();\n  }, [onClick, content]);\n  return /*#__PURE__*/_jsx(motion.button, {\n    style: {\n      border: \"none\",\n      outline: \"none\",\n      resize: \"none\",\n      width: \"max-content\",\n      wordBreak: \"break-word\",\n      overflowWrap: \"break-word\",\n      WebkitTapHighlightColor: \"rgba(0, 0, 0, 0)\",\n      letterSpacing: \"-0.2px\",\n      display: \"flex\",\n      justifyContent: \"center\",\n      alignItems: \"center\",\n      background: fill,\n      borderRadius,\n      cursor: \"pointer\",\n      padding: paddingValue,\n      color,\n      ...deprecatedFont,\n      ...font,\n      ...style\n    },\n    onClick: handleClick,\n    ...rest,\n    whileHover: hoverOptions,\n    transition: hoverOptions === null || hoverOptions === void 0 ? void 0 : hoverOptions.transition,\n    children: label\n  });\n}\n;\naddPropertyControls(Clipboard, {\n  content: {\n    type: ControlType.String,\n    title: \"Content\",\n    displayTextArea: true,\n    description: \"When clicked, this content will be copied to the clipboard.\"\n  },\n  label: {\n    type: ControlType.String,\n    title: \"Label\",\n    defaultValue: \"Copy to Clipboard\"\n  },\n  fill: {\n    type: ControlType.Color,\n    title: \"Fill\",\n    defaultValue: \"#06F\"\n  },\n  color: {\n    type: ControlType.Color,\n    title: \"Text\",\n    defaultValue: \"#fff\"\n  },\n  font: {\n    // @ts-ignore - Internal\n    type: ControlType.Font,\n    controls: \"extended\",\n    defaultValue: {\n      fontSize: 16\n    }\n  },\n  hoverOptions: {\n    type: ControlType.Object,\n    title: \"Hover\",\n    buttonTitle: \"Effect\",\n    optional: true,\n    controls: {\n      scale: {\n        type: ControlType.Number,\n        title: \"Scale\",\n        min: 0,\n        max: 10,\n        displayStepper: true,\n        step: .01,\n        defaultValue: 1.1\n      },\n      backgroundColor: {\n        type: ControlType.Color,\n        title: \"Fill\",\n        defaultValue: \"#0088FF\",\n        optional: true\n      },\n      color: {\n        type: ControlType.Color,\n        title: \"Color\",\n        defaultValue: \"#FFF\",\n        optional: true\n      },\n      transition: {\n        type: ControlType.Transition,\n        title: \"Transition\",\n        defaultValue: {\n          type: \"spring\",\n          stiffness: 400,\n          damping: 30\n        }\n      }\n    }\n  },\n  padding: {\n    type: ControlType.FusedNumber,\n    toggleKey: \"paddingPerSide\",\n    toggleTitles: [\"Padding\", \"Padding per side\"],\n    valueKeys: [\"paddingTop\", \"paddingRight\", \"paddingBottom\", \"paddingLeft\"],\n    valueLabels: [\"T\", \"R\", \"B\", \"L\"],\n    min: 0,\n    title: \"Padding\",\n    defaultValue: 10\n  },\n  borderRadius: {\n    title: \"Radius\",\n    type: ControlType.FusedNumber,\n    toggleKey: \"isMixedBorderRadius\",\n    toggleTitles: [\"Radius\", \"Radius per corner\"],\n    valueKeys: [\"topLeftRadius\", \"topRightRadius\", \"bottomRightRadius\", \"bottomLeftRadius\"],\n    valueLabels: [\"TL\", \"TR\", \"BR\", \"BL\"],\n    min: 0,\n    defaultValue: 50\n  },\n  ...defaultEvents\n});\nexport const __FramerMetadata__ = {\n  \"exports\": {\n    \"default\": {\n      \"type\": \"reactComponent\",\n      \"name\": \"Clipboard\",\n      \"slots\": [],\n      \"annotations\": {\n        \"framerSupportedLayoutHeight\": \"any\",\n        \"framerSupportedLayoutWidth\": \"any\",\n        \"framerIntrinsicHeight\": \"50\",\n        \"framerContractVersion\": \"1\",\n        \"framerIntrinsicWidth\": \"90\"\n      }\n    },\n    \"__FramerMetadata__\": {\n      \"type\": \"variable\"\n    }\n  }\n};\n//# sourceMappingURL=./Clipboard.map"],
  "mappings": "8MAae,SAARA,EAA2BC,EAAO,CACvC,GAAM,CACJ,MAAAC,EACA,QAAAC,EACA,KAAAC,EACA,MAAAC,EACA,MAAAC,EACA,QAAAC,EACA,KAAAC,EACA,aAAAC,EACA,GAAGC,CACL,EAAIT,EACEU,EAAiBC,EAAgB,CACrC,WAAY,IACZ,GAAGF,CACL,CAAC,EACKG,EAAeC,EAAUb,CAAK,EAC9Bc,EAAeC,EAAWf,CAAK,EAC/BgB,EAAcC,EAAY,IAAM,CACpC,IAAIC,GACHA,EAAMC,EAAU,aAAe,MAAQD,IAAQ,QAAkBA,EAAI,UAAUhB,CAAO,EACrCI,IAAQ,CAC5D,EAAG,CAACA,EAASJ,CAAO,CAAC,EACrB,OAAoB,EAAKkB,EAAO,OAAQ,CACtC,MAAO,CACL,OAAQ,OACR,QAAS,OACT,OAAQ,OACR,MAAO,cACP,UAAW,aACX,aAAc,aACd,wBAAyB,mBACzB,cAAe,SACf,QAAS,OACT,eAAgB,SAChB,WAAY,SACZ,WAAYjB,EACZ,aAAAS,EACA,OAAQ,UACR,QAASE,EACT,MAAAV,EACA,GAAGM,EACH,GAAGH,EACH,GAAGF,CACL,EACA,QAASW,EACT,GAAGP,EACH,WAAYD,EACZ,WAAwEA,GAAa,WACrF,SAAUP,CACZ,CAAC,CACH,CAEAoB,EAAoBtB,EAAW,CAC7B,QAAS,CACP,KAAMuB,EAAY,OAClB,MAAO,UACP,gBAAiB,GACjB,YAAa,6DACf,EACA,MAAO,CACL,KAAMA,EAAY,OAClB,MAAO,QACP,aAAc,mBAChB,EACA,KAAM,CACJ,KAAMA,EAAY,MAClB,MAAO,OACP,aAAc,MAChB,EACA,MAAO,CACL,KAAMA,EAAY,MAClB,MAAO,OACP,aAAc,MAChB,EACA,KAAM,CAEJ,KAAMA,EAAY,KAClB,SAAU,WACV,aAAc,CACZ,SAAU,EACZ,CACF,EACA,aAAc,CACZ,KAAMA,EAAY,OAClB,MAAO,QACP,YAAa,SACb,SAAU,GACV,SAAU,CACR,MAAO,CACL,KAAMA,EAAY,OAClB,MAAO,QACP,IAAK,EACL,IAAK,GACL,eAAgB,GAChB,KAAM,IACN,aAAc,GAChB,EACA,gBAAiB,CACf,KAAMA,EAAY,MAClB,MAAO,OACP,aAAc,UACd,SAAU,EACZ,EACA,MAAO,CACL,KAAMA,EAAY,MAClB,MAAO,QACP,aAAc,OACd,SAAU,EACZ,EACA,WAAY,CACV,KAAMA,EAAY,WAClB,MAAO,aACP,aAAc,CACZ,KAAM,SACN,UAAW,IACX,QAAS,EACX,CACF,CACF,CACF,EACA,QAAS,CACP,KAAMA,EAAY,YAClB,UAAW,iBACX,aAAc,CAAC,UAAW,kBAAkB,EAC5C,UAAW,CAAC,aAAc,eAAgB,gBAAiB,aAAa,EACxE,YAAa,CAAC,IAAK,IAAK,IAAK,GAAG,EAChC,IAAK,EACL,MAAO,UACP,aAAc,EAChB,EACA,aAAc,CACZ,MAAO,SACP,KAAMA,EAAY,YAClB,UAAW,sBACX,aAAc,CAAC,SAAU,mBAAmB,EAC5C,UAAW,CAAC,gBAAiB,iBAAkB,oBAAqB,kBAAkB,EACtF,YAAa,CAAC,KAAM,KAAM,KAAM,IAAI,EACpC,IAAK,EACL,aAAc,EAChB,EACA,GAAGC,CACL,CAAC",
  "names": ["Clipboard", "props", "label", "content", "fill", "color", "style", "onClick", "font", "hoverOptions", "rest", "deprecatedFont", "useFontControls", "borderRadius", "useRadius", "paddingValue", "usePadding", "handleClick", "te", "ref", "navigator", "motion", "addPropertyControls", "ControlType", "defaultEvents"]
}
