{"version":3,"sources":["jsdelivr-header.js","/npm/react-tilt@1.0.2/dist/index.js"],"names":[],"mappings":"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","file":"/npm/react-tilt@1.0.2/dist/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.37.0.\n * Original file: /npm/react-tilt@1.0.2/dist/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","var __defProp = Object.defineProperty;\nvar __defProps = Object.defineProperties;\nvar __getOwnPropDescs = Object.getOwnPropertyDescriptors;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n  for (var prop in b || (b = {}))\n    if (__hasOwnProp.call(b, prop))\n      __defNormalProp(a, prop, b[prop]);\n  if (__getOwnPropSymbols)\n    for (var prop of __getOwnPropSymbols(b)) {\n      if (__propIsEnum.call(b, prop))\n        __defNormalProp(a, prop, b[prop]);\n    }\n  return a;\n};\nvar __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));\n\n// src/index.tsx\nimport React, { Component } from \"react\";\nimport { jsx } from \"react/jsx-runtime\";\nvar Tilt = class extends Component {\n  constructor(props) {\n    super(props);\n    this.ref = React.createRef();\n    this.state = {\n      style: {}\n    };\n    const defaultSettings = {\n      reverse: false,\n      max: 35,\n      perspective: 1e3,\n      easing: \"cubic-bezier(.03,.98,.52,.99)\",\n      scale: \"1.1\",\n      speed: \"1000\",\n      transition: true,\n      axis: null,\n      reset: true\n    };\n    this.width = null;\n    this.height = null;\n    this.left = null;\n    this.top = null;\n    this.transitionTimeout = null;\n    this.updateCall = null;\n    this.element = null;\n    this.settings = Object.assign({}, defaultSettings, this.props.options);\n    this.reverse = this.settings.reverse ? -1 : 1;\n    this.onMouseEnter = this.onMouseEnter.bind(this, this.props.onMouseEnter);\n    this.onMouseMove = this.onMouseMove.bind(this, this.props.onMouseMove);\n    this.onMouseLeave = this.onMouseLeave.bind(this, this.props.onMouseLeave);\n  }\n  componentDidMount() {\n    this.element = this.ref.current;\n    setTimeout(() => {\n      if (this.element.parentElement.querySelector(\":hover\") === this.element) {\n        this.onMouseEnter();\n      }\n    }, 0);\n  }\n  componentWillUnmount() {\n    clearTimeout(this.transitionTimeout);\n    cancelAnimationFrame(this.updateCall);\n  }\n  onMouseEnter(cb = () => {\n  }, e) {\n    this.updateElementPosition();\n    this.setState(Object.assign({}, this.state, {\n      style: __spreadProps(__spreadValues({}, this.state.style), {\n        willChange: \"transform\"\n      })\n    }));\n    this.setTransition();\n    return cb(e);\n  }\n  reset() {\n    window.requestAnimationFrame(() => {\n      this.setState(Object.assign({}, this.state, {\n        style: __spreadProps(__spreadValues({}, this.state.style), {\n          transform: `perspective(${this.settings.perspective}px) rotateX(0deg) rotateY(0deg) scale3d(1, 1, 1)`\n        })\n      }));\n    });\n  }\n  onMouseMove(cb = () => {\n  }, e) {\n    e.persist();\n    if (this.updateCall !== null) {\n      window.cancelAnimationFrame(this.updateCall);\n    }\n    this.event = e;\n    this.updateCall = requestAnimationFrame(this.update.bind(this, e));\n    return cb(e);\n  }\n  setTransition() {\n    clearTimeout(this.transitionTimeout);\n    this.setState(Object.assign({}, this.state, {\n      style: __spreadProps(__spreadValues({}, this.state.style), {\n        transition: `${this.settings.speed}ms ${this.settings.easing}`\n      })\n    }));\n    this.transitionTimeout = setTimeout(() => {\n      this.setState(Object.assign({}, this.state, {\n        style: __spreadProps(__spreadValues({}, this.state.style), {\n          transition: \"\"\n        })\n      }));\n    }, this.settings.speed);\n  }\n  onMouseLeave(cb = () => {\n  }, e) {\n    this.setTransition();\n    if (this.settings.reset) {\n      this.reset();\n    }\n    return cb(e);\n  }\n  getValues(e) {\n    const x = (e.nativeEvent.clientX - this.left) / this.width;\n    const y = (e.nativeEvent.clientY - this.top) / this.height;\n    const _x = Math.min(Math.max(x, 0), 1);\n    const _y = Math.min(Math.max(y, 0), 1);\n    const tiltX = (this.reverse * (this.settings.max / 2 - _x * this.settings.max)).toFixed(2);\n    const tiltY = (this.reverse * (_y * this.settings.max - this.settings.max / 2)).toFixed(2);\n    const percentageX = _x * 100;\n    const percentageY = _y * 100;\n    return {\n      tiltX,\n      tiltY,\n      percentageX,\n      percentageY\n    };\n  }\n  updateElementPosition() {\n    const rect = this.element.getBoundingClientRect();\n    this.width = this.element.offsetWidth;\n    this.height = this.element.offsetHeight;\n    this.left = rect.left;\n    this.top = rect.top;\n  }\n  update(e) {\n    const values = this.getValues(e);\n    this.setState(Object.assign({}, this.state, {\n      style: __spreadProps(__spreadValues({}, this.state.style), {\n        transform: `perspective(${this.settings.perspective}px) rotateX(${this.settings.axis === \"x\" ? 0 : values.tiltY}deg) rotateY(${this.settings.axis === \"y\" ? 0 : values.tiltX}deg) scale3d(${this.settings.scale}, ${this.settings.scale}, ${this.settings.scale})`\n      })\n    }));\n    this.updateCall = null;\n  }\n  render() {\n    const style = Object.assign({}, this.props.style, this.state.style);\n    return /* @__PURE__ */ jsx(\n      \"div\",\n      {\n        style,\n        ref: this.ref,\n        className: this.props.className,\n        onMouseEnter: this.onMouseEnter,\n        onMouseMove: this.onMouseMove,\n        onMouseLeave: this.onMouseLeave,\n        children: this.props.children\n      }\n    );\n  }\n};\nexport {\n  Tilt\n};\n"]}