{"version":3,"file":"ripple.mjs","sources":["../../../../packages/utils/ripple.ts"],"sourcesContent":["import { setColor } from './color'\n\nconst ripple = (evs: any, color?: string, solid?: boolean) => {\n  const el = evs.currentTarget\n  const offset = el.getBoundingClientRect()\n  const x = evs.clientX - offset.left\n  const y = evs.clientY - offset.top\n\n  let time = 0.6\n\n  if (el.clientWidth > 150) {\n    time = 1.2\n  }\n\n  const effectContent = document.createElement('div')\n\n  effectContent.className = 'vs-ripple'\n\n  if (!color) {\n    setColor('color', '#fff', effectContent)\n  }\n\n  const effect = document.createElement('div')\n\n  effect.className = 'vs-ripple--default'\n  if (solid) {\n    effect.classList.add('vs-ripple--solid')\n    //   setColor('color', color || 'primary', effectContent)\n  }\n  effect.style.transition = `all ${time}s ease`\n\n  effect.style.left = `${x}px`\n  effect.style.top = `${y}px`\n\n  effectContent.appendChild(effect)\n\n  el.appendChild(effectContent)\n\n  effect.style.width = `${el.clientWidth * 2.5}px`\n  effect.style.height = `${el.clientWidth * 2.5}px`\n  effect.style.opacity = `1`\n\n  let noTime = false\n  setTimeout(() => {\n    noTime = true\n  }, 300)\n\n  function removeEffect(evs: any) {\n    effect.style.transition = `all 0.${time * 600}s ease`\n    setTimeout(\n      () => {\n        effect.style.opacity = '0'\n        setTimeout(() => {\n          el.removeChild(effectContent)\n        }, time * 300)\n      },\n      noTime ? 0 : time * 400\n    )\n\n    evs.target.removeEventListener('mouseup', removeEffect)\n    evs.target.removeEventListener('mouseleave', removeEffect)\n  }\n\n  evs.target.addEventListener('mouseup', removeEffect)\n  evs.target.addEventListener('mouseleave', removeEffect)\n}\n\nconst rippleReverse = (evs: any) => {\n  const el = evs.currentTarget\n  const offset = el.getBoundingClientRect()\n  const x = evs.clientX - offset.left\n  const y = evs.clientY - offset.top\n\n  let time = 0.6\n\n  if (el.clientWidth > 150) {\n    time = 1.2\n  }\n\n  const effectContent = document.createElement('div')\n\n  effectContent.className = 'vs-ripple'\n\n  const effect = document.createElement('div')\n\n  effect.className = 'vs-ripple--invert'\n  // effect.style.transition = `all ${time}s ease`\n\n  effect.style.left = `${x}px`\n  effect.style.top = `${y}px`\n  effect.style.width = `${el.clientWidth * 2.5}px`\n  effect.style.height = `${el.clientWidth * 2.5}px`\n  effect.style.opacity = '0'\n\n  effectContent.appendChild(effect)\n\n  el.appendChild(effectContent)\n\n  setTimeout(() => {\n    effect.style.width = '0px'\n    effect.style.height = '0px'\n    effect.style.opacity = '0.5'\n  }, 1)\n\n  let noTime = false\n  setTimeout(() => {\n    noTime = true\n  }, 300)\n\n  function removeEffect(evs: any) {\n    effect.style.transition = `all 0.${time * 600}s ease`\n    setTimeout(\n      () => {\n        effect.style.opacity = '0'\n        setTimeout(() => {\n          el.removeChild(effectContent)\n        }, time * 300)\n      },\n      noTime ? 0 : time * 400\n    )\n\n    evs.target.removeEventListener('mouseup', removeEffect)\n    evs.target.removeEventListener('mouseleave', removeEffect)\n  }\n\n  evs.target.addEventListener('mouseup', removeEffect)\n  evs.target.addEventListener('mouseleave', removeEffect)\n}\n\n//\nconst rippleCut = (evs: any) => {\n  const el = evs.currentTarget\n  const offset = el.getBoundingClientRect()\n  const x = evs.clientX - offset.left\n  const y = evs.clientY - offset.top\n\n  let time = 0.6\n\n  if (el.clientWidth > 150) {\n    time = 1.2\n  }\n\n  const effectContent = document.createElement('div')\n\n  effectContent.className = 'vs-ripple'\n\n  const effect = document.createElement('div')\n  const effect2 = document.createElement('div')\n\n  effect.className = 'vs-ripple--cut-1'\n  effect2.className = 'vs-ripple--cut-2'\n  // effect.style.transition = `all ${time}s ease`\n\n  effect.style.left = effect2.style.left = `${x}px`\n  effect.style.top = effect2.style.top = `${y}px`\n  effect.style.width = effect2.style.width = `${el.clientWidth * 2.5}px`\n  effect.style.height = effect2.style.height = `${el.clientWidth * 2.5}px`\n  effect.style.opacity = effect2.style.opacity = `1`\n\n  effectContent.appendChild(effect)\n  effectContent.appendChild(effect2)\n\n  el.appendChild(effectContent)\n\n  setTimeout(() => {\n    effect.style.left = `-${el.clientWidth * 1.3}px`\n    effect.style.opacity = '1'\n\n    effect2.style.left = `${el.clientWidth * 1.3}px`\n    effect2.style.opacity = '1'\n  }, 1)\n\n  let noTime = false\n  setTimeout(() => {\n    noTime = true\n  }, 300)\n\n  function removeEffect(evs: any) {\n    effect.style.transition = `all 0.${time * 600}s ease`\n    setTimeout(\n      () => {\n        effect.style.opacity = '0'\n        setTimeout(() => {\n          el.removeChild(effectContent)\n        }, time * 300)\n      },\n      noTime ? 0 : time * 400\n    )\n\n    evs.target.removeEventListener('mouseup', removeEffect)\n    evs.target.removeEventListener('mouseleave', removeEffect)\n  }\n\n  evs.target.addEventListener('mouseup', removeEffect)\n  evs.target.addEventListener('mouseleave', removeEffect)\n}\n\nexport { rippleReverse, rippleCut, ripple }\n"],"names":["evs"],"mappings":"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"}