{"version":3,"sources":["jsdelivr-header.js","/npm/html2particle@0.0.11-beta.5/html2particle.es.js"],"names":[],"mappings":"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","file":"/npm/html2particle@0.0.11-beta.5/html2particle.es.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/html2particle@0.0.11-beta.5/html2particle.es.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 G = Object.defineProperty;\nvar $ = (s, i, n) => i in s ? G(s, i, { enumerable: !0, configurable: !0, writable: !0, value: n }) : s[i] = n;\nvar a = (s, i, n) => ($(s, typeof i != \"symbol\" ? i + \"\" : i, n), n);\nimport X from \"html2canvas\";\nfunction z(s) {\n  if (!s || typeof document > \"u\")\n    return;\n  let i = document.head || document.getElementsByTagName(\"head\")[0], n = document.createElement(\"style\");\n  n.type = \"text/css\", i.appendChild(n), n.styleSheet ? n.styleSheet.cssText = s : n.appendChild(document.createTextNode(s));\n}\nz(\"\");\nclass Y {\n  constructor({ rgbaArray: i, startX: n, startY: o, index: h, disWidth: c, disHeight: t, disTop: u, disLeft: m, disParticleGap: p }) {\n    a(this, \"name\");\n    a(this, \"animationDuration\");\n    a(this, \"speed\");\n    a(this, \"radius\");\n    a(this, \"startX\");\n    a(this, \"startY\");\n    a(this, \"rgbaArray\");\n    a(this, \"disWidth\");\n    a(this, \"disHeight\");\n    a(this, \"disLeft\");\n    a(this, \"disTop\");\n    a(this, \"index\");\n    a(this, \"disParticleGap\");\n    this.name = \"ExplodingParticle\", this.animationDuration = 1e3, this.radius = 100, this.rgbaArray = i, this.startX = n, this.startY = o, this.index = h, this.disWidth = c, this.disHeight = t, this.disTop = u, this.disLeft = m, this.disParticleGap = p, this.speed = {\n      x: Math.random() * 30 - 15,\n      // [-20, 20]\n      y: Math.random() * 40 - 20,\n      ax: 0,\n      ay: 0.98\n    }, this.radius = 5 + Math.random() * 5;\n  }\n  draw(i, n) {\n    this.radius > 0 && (i.beginPath(), i.arc(this.startX, this.startY, this.radius, 0, Math.PI * 2), i.fillStyle = `rgba(${this.rgbaArray[0]},${this.rgbaArray[1]},${this.rgbaArray[2]}, ${this.rgbaArray[3]})`, i.fill(), this.radius -= 0.1, this.speed.y += this.speed.ay / 3, this.startX += this.speed.x / 10, this.startY += this.speed.y / 10);\n  }\n}\nconst H = (s) => (i) => i ** s, R = (s) => (i) => 1 - Math.abs((i - 1) ** s), I = (s) => (i) => i < 0.5 ? H(s)(i * 2) / 2 : R(s)(i * 2 - 1) / 2 + 0.5;\nfunction y() {\n  return (Math.random() + Math.random() + Math.random() + Math.random() + Math.random() + Math.random() - 3) / 3;\n}\nclass L {\n  constructor({ rgbaArray: i, startX: n, startY: o, index: h, disWidth: c, disHeight: t, disTop: u, disLeft: m, disParticleGap: p }) {\n    a(this, \"name\");\n    a(this, \"animationDuration\");\n    a(this, \"radius\");\n    a(this, \"startX\");\n    a(this, \"startY\");\n    a(this, \"rgbaArray\");\n    a(this, \"disWidth\");\n    a(this, \"disHeight\");\n    a(this, \"disLeft\");\n    a(this, \"disTop\");\n    a(this, \"index\");\n    a(this, \"widthScaler\");\n    a(this, \"disParticleGap\");\n    a(this, \"numWaves\");\n    a(this, \"xPosFunc\");\n    a(this, \"heightScaler\");\n    a(this, \"yPosFunc\");\n    a(this, \"startSize\");\n    a(this, \"sizeFunc\");\n    a(this, \"opacityFactor\");\n    a(this, \"opacityFunc\");\n    this.name = \"SinWaveParticle\", this.animationDuration = 1e3, this.radius = 100, this.rgbaArray = i, this.startX = n, this.startY = o, this.index = h, this.disWidth = c, this.disHeight = t, this.disTop = u, this.disLeft = m, this.disParticleGap = p, this.widthScaler = Math.round(50 * y()), this.numWaves = (y() + 1 / 2) * 2 + 1, this.xPosFunc = (l) => Math.sin(this.numWaves * Math.PI * l), this.heightScaler = Math.round(65 * (y() + 1) / 2) + 10, this.yPosFunc = (l) => l, this.startSize = 10, this.sizeFunc = (l) => 1 - l, this.opacityFactor = Math.round((y() + 1) / 2 * 3 + 1), this.opacityFunc = (l) => 1 - I(this.opacityFactor)(l);\n  }\n  draw(i, n) {\n    n = n >= 1 ? 1 : n;\n    const o = this.startX + this.xPosFunc(n) * this.widthScaler, h = this.startY - this.yPosFunc(n) * this.heightScaler, c = this.startSize * this.sizeFunc(n);\n    this.opacityFunc(n), i.fillStyle = `rgba(${this.rgbaArray[0]},${this.rgbaArray[1]},${this.rgbaArray[2]},${this.rgbaArray[3]})`, i.fillRect(o - c / 2, h - c / 2, c, c);\n  }\n}\nfunction N(s, i = {\n  type: \"SinWaveParticle\",\n  particleGap: 5\n}) {\n  let n = !1, o = null;\n  const h = [];\n  let c;\n  const t = {\n    el: s,\n    width: 0,\n    height: 0,\n    top: 0,\n    left: 0,\n    particleType: i.type,\n    particleGap: i.particleGap ?? 5,\n    particleObj: {\n      startTime: Date.now(),\n      myParticles: []\n    },\n    animationDuration: 1e3\n  };\n  function u(e) {\n    h.push(e);\n  }\n  u({\n    name: \"SinWaveParticle\",\n    func: L\n  }), u({\n    name: \"ExplodingParticle\",\n    func: Y\n  });\n  const { customParticle: m } = i;\n  m && u({\n    name: \"CustomParticle\",\n    func: m\n  }), p();\n  async function p() {\n    x(), await l(), o = A();\n  }\n  function l() {\n    return new Promise((e) => {\n      X(t.el, { scale: 1, useCORS: !0, backgroundColor: null }).then((r) => {\n        typeof t.scrnCanvas > \"u\" && (t.scrnCanvas = r, t.scrnCtx = r.getContext(\"2d\", { willReadFrequently: !0 })), e(\"gengrate DOM canvas\");\n      });\n    });\n  }\n  function A() {\n    return t.scrnCtx ? t.scrnCtx.getImageData(0, 0, t.width, t.height).data : null;\n  }\n  function x() {\n    const e = M(t.el);\n    t.width = e.width, t.height = e.height, t.top = e.top, t.left = e.left;\n  }\n  function M(e) {\n    const r = e.getBoundingClientRect();\n    return {\n      width: r.width,\n      height: r.height,\n      top: r.top,\n      left: r.left\n    };\n  }\n  function D(e, r, d, g) {\n    const f = h.find((W) => W.name === e.particleType);\n    if (!f) {\n      console.error(\"没有找到该粒子动画类型\");\n      return;\n    }\n    const P = f.func, S = new P({\n      rgbaArray: g,\n      startX: r,\n      startY: d,\n      index: e.particleObj.myParticles.length,\n      disWidth: e.width,\n      disHeight: e.height,\n      disTop: e.top,\n      disLeft: e.left,\n      disParticleGap: e.particleGap\n    });\n    e.animationDuration = S.animationDuration, e.particleObj.myParticles.push(S);\n  }\n  function F(e) {\n    if (n) {\n      typeof e.ctx < \"u\" && e.ctx.clearRect(0, 0, document.documentElement.scrollWidth, document.documentElement.scrollHeight);\n      const r = (Date.now() - e.particleObj.startTime) / e.animationDuration;\n      for (let d = 0; d < e.particleObj.myParticles.length; d++)\n        e.particleObj.myParticles[d].draw(e.ctx, r);\n      r > 1 && (typeof e.ctx < \"u\" && e.ctx.clearRect(0, 0, document.documentElement.scrollWidth, document.documentElement.scrollHeight), w());\n    }\n  }\n  function C() {\n    if (t.particleObj = {\n      startTime: Date.now(),\n      myParticles: []\n    }, o)\n      for (let e = 0; e < t.height; e += t.particleGap)\n        for (let r = 0; r < t.width; r += t.particleGap) {\n          const d = (e * t.width + r) * 4, g = o.slice(d, d + t.particleGap), f = r + Math.random() * 10 - t.particleGap, P = e + Math.random() * 10 - t.particleGap;\n          D(t, t.left + f, t.top + P, g);\n        }\n  }\n  function T() {\n    w(), x(), E(), setTimeout(() => {\n      b(), v();\n    });\n  }\n  function E() {\n    typeof t.canvas > \"u\" && (t.canvas = document.createElement(\"canvas\"), t.canvas.style.position = \"fixed\", t.canvas.width = document.documentElement.scrollWidth, t.canvas.height = document.documentElement.scrollHeight, t.canvas.style.top = \"0px\", t.canvas.style.left = \"0px\", t.canvas.style.right = \"0px\", t.canvas.style.bottom = \"0px\", t.canvas.style.userSelect = \"none\", t.canvas.style.pointerEvents = \"none\", t.canvas.style.zIndex = \"1001\", t.ctx = t.canvas.getContext(\"2d\", { willReadFrequently: !0 }), document.body.appendChild(t.canvas));\n  }\n  function b() {\n    n = !0, C();\n  }\n  function v() {\n    F(t), n && (c = window.requestAnimationFrame(v));\n  }\n  function w() {\n    t.particleObj = {\n      startTime: Date.now(),\n      myParticles: []\n    }, cancelAnimationFrame(c), n = !1, t.canvas && (document.body.removeChild(t.canvas), t.canvas = void 0);\n  }\n  return {\n    isAnimating: n,\n    startAnimation: T\n  };\n}\nexport {\n  N as default,\n  N as html2particle\n};\n"]}