@tsparticles/shape-cards 4.0.0-beta.16 → 4.0.0-beta.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/browser/cards/index.js +1 -1
  2. package/browser/cards/index.lazy.js +1 -1
  3. package/browser/clubs/index.js +1 -1
  4. package/browser/clubs/index.lazy.js +1 -1
  5. package/browser/diamonds/index.js +1 -1
  6. package/browser/diamonds/index.lazy.js +1 -1
  7. package/browser/hearts/index.js +1 -1
  8. package/browser/hearts/index.lazy.js +1 -1
  9. package/browser/index.js +1 -1
  10. package/browser/index.lazy.js +1 -1
  11. package/browser/spades/index.js +1 -1
  12. package/browser/spades/index.lazy.js +1 -1
  13. package/browser/suits.js +1 -1
  14. package/browser/suits.lazy.js +1 -1
  15. package/browser/utils.js +2 -12
  16. package/cjs/cards/index.js +1 -1
  17. package/cjs/cards/index.lazy.js +1 -1
  18. package/cjs/clubs/index.js +1 -1
  19. package/cjs/clubs/index.lazy.js +1 -1
  20. package/cjs/diamonds/index.js +1 -1
  21. package/cjs/diamonds/index.lazy.js +1 -1
  22. package/cjs/hearts/index.js +1 -1
  23. package/cjs/hearts/index.lazy.js +1 -1
  24. package/cjs/index.js +1 -1
  25. package/cjs/index.lazy.js +1 -1
  26. package/cjs/spades/index.js +1 -1
  27. package/cjs/spades/index.lazy.js +1 -1
  28. package/cjs/suits.js +1 -1
  29. package/cjs/suits.lazy.js +1 -1
  30. package/cjs/utils.js +2 -12
  31. package/esm/cards/index.js +1 -1
  32. package/esm/cards/index.lazy.js +1 -1
  33. package/esm/clubs/index.js +1 -1
  34. package/esm/clubs/index.lazy.js +1 -1
  35. package/esm/diamonds/index.js +1 -1
  36. package/esm/diamonds/index.lazy.js +1 -1
  37. package/esm/hearts/index.js +1 -1
  38. package/esm/hearts/index.lazy.js +1 -1
  39. package/esm/index.js +1 -1
  40. package/esm/index.lazy.js +1 -1
  41. package/esm/spades/index.js +1 -1
  42. package/esm/spades/index.lazy.js +1 -1
  43. package/esm/suits.js +1 -1
  44. package/esm/suits.lazy.js +1 -1
  45. package/esm/utils.js +2 -12
  46. package/package.json +3 -3
  47. package/report.html +1 -1
  48. package/tsparticles.shape.cards.js +9 -19
  49. package/tsparticles.shape.cards.min.js +1 -1
  50. package/types/utils.d.ts +1 -2
@@ -1,6 +1,6 @@
1
1
  import { CardDrawer } from "./CardDrawer.js";
2
2
  export async function loadFullCardsShape(engine) {
3
- engine.checkVersion("4.0.0-beta.16");
3
+ engine.checkVersion("4.0.0-beta.17");
4
4
  await engine.pluginManager.register(e => {
5
5
  e.pluginManager.addShape(["card"], container => Promise.resolve(new CardDrawer(container)));
6
6
  });
@@ -1,5 +1,5 @@
1
1
  export async function loadFullCardsShape(engine) {
2
- engine.checkVersion("4.0.0-beta.16");
2
+ engine.checkVersion("4.0.0-beta.17");
3
3
  await engine.pluginManager.register(e => {
4
4
  e.pluginManager.addShape(["card"], async (container) => {
5
5
  const { CardDrawer } = await import("./CardDrawer.js");
@@ -1,6 +1,6 @@
1
1
  import { ClubDrawer } from "./ClubDrawer.js";
2
2
  export async function loadClubsSuitShape(engine) {
3
- engine.checkVersion("4.0.0-beta.16");
3
+ engine.checkVersion("4.0.0-beta.17");
4
4
  await engine.pluginManager.register(e => {
5
5
  e.pluginManager.addShape(["club", "clubs"], () => Promise.resolve(new ClubDrawer()));
6
6
  });
@@ -1,5 +1,5 @@
1
1
  export async function loadClubsSuitShape(engine) {
2
- engine.checkVersion("4.0.0-beta.16");
2
+ engine.checkVersion("4.0.0-beta.17");
3
3
  await engine.pluginManager.register(e => {
4
4
  e.pluginManager.addShape(["club", "clubs"], async () => {
5
5
  const { ClubDrawer } = await import("./ClubDrawer.js");
@@ -1,6 +1,6 @@
1
1
  import { DiamondDrawer } from "./DiamondDrawer.js";
2
2
  export async function loadDiamondsSuitShape(engine) {
3
- engine.checkVersion("4.0.0-beta.16");
3
+ engine.checkVersion("4.0.0-beta.17");
4
4
  await engine.pluginManager.register(e => {
5
5
  e.pluginManager.addShape(["diamond", "diamonds"], () => Promise.resolve(new DiamondDrawer()));
6
6
  });
@@ -1,5 +1,5 @@
1
1
  export async function loadDiamondsSuitShape(engine) {
2
- engine.checkVersion("4.0.0-beta.16");
2
+ engine.checkVersion("4.0.0-beta.17");
3
3
  await engine.pluginManager.register(e => {
4
4
  e.pluginManager.addShape(["diamond", "diamonds"], async () => {
5
5
  const { DiamondDrawer } = await import("./DiamondDrawer.js");
@@ -1,6 +1,6 @@
1
1
  import { HeartDrawer } from "./HeartDrawer.js";
2
2
  export async function loadHeartsSuitShape(engine) {
3
- engine.checkVersion("4.0.0-beta.16");
3
+ engine.checkVersion("4.0.0-beta.17");
4
4
  await engine.pluginManager.register(e => {
5
5
  e.pluginManager.addShape(["heart", "hearts"], () => Promise.resolve(new HeartDrawer()));
6
6
  });
@@ -1,5 +1,5 @@
1
1
  export async function loadHeartsSuitShape(engine) {
2
- engine.checkVersion("4.0.0-beta.16");
2
+ engine.checkVersion("4.0.0-beta.17");
3
3
  await engine.pluginManager.register(e => {
4
4
  e.pluginManager.addShape(["heart", "hearts"], async () => {
5
5
  const { HeartDrawer } = await import("./HeartDrawer.js");
package/browser/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { loadCardSuitsShape } from "./suits.js";
2
2
  import { loadFullCardsShape } from "./cards/index.js";
3
3
  export async function loadCardsShape(engine) {
4
- engine.checkVersion("4.0.0-beta.16");
4
+ engine.checkVersion("4.0.0-beta.17");
5
5
  await Promise.all([
6
6
  loadFullCardsShape(engine),
7
7
  loadCardSuitsShape(engine),
@@ -1,5 +1,5 @@
1
1
  export async function loadCardsShape(engine) {
2
- engine.checkVersion("4.0.0-beta.16");
2
+ engine.checkVersion("4.0.0-beta.17");
3
3
  await engine.pluginManager.register(async (e) => {
4
4
  const [{ loadFullCardsShape }, { loadCardSuitsShape }] = await Promise.all([
5
5
  import("./cards/index.lazy.js"),
@@ -1,6 +1,6 @@
1
1
  import { SpadeDrawer } from "./SpadeDrawer.js";
2
2
  export async function loadSpadesSuitShape(engine) {
3
- engine.checkVersion("4.0.0-beta.16");
3
+ engine.checkVersion("4.0.0-beta.17");
4
4
  await engine.pluginManager.register(e => {
5
5
  e.pluginManager.addShape(["spade", "spades"], () => Promise.resolve(new SpadeDrawer()));
6
6
  });
@@ -1,5 +1,5 @@
1
1
  export async function loadSpadesSuitShape(engine) {
2
- engine.checkVersion("4.0.0-beta.16");
2
+ engine.checkVersion("4.0.0-beta.17");
3
3
  await engine.pluginManager.register(e => {
4
4
  e.pluginManager.addShape(["spade", "spades"], async () => {
5
5
  const { SpadeDrawer } = await import("./SpadeDrawer.js");
package/browser/suits.js CHANGED
@@ -3,7 +3,7 @@ import { loadDiamondsSuitShape } from "./diamonds/index.js";
3
3
  import { loadHeartsSuitShape } from "./hearts/index.js";
4
4
  import { loadSpadesSuitShape } from "./spades/index.js";
5
5
  export async function loadCardSuitsShape(engine) {
6
- engine.checkVersion("4.0.0-beta.16");
6
+ engine.checkVersion("4.0.0-beta.17");
7
7
  await Promise.all([
8
8
  loadClubsSuitShape(engine),
9
9
  loadDiamondsSuitShape(engine),
@@ -1,5 +1,5 @@
1
1
  export async function loadCardSuitsShape(engine) {
2
- engine.checkVersion("4.0.0-beta.16");
2
+ engine.checkVersion("4.0.0-beta.17");
3
3
  const [{ loadClubsSuitShape }, { loadDiamondsSuitShape }, { loadHeartsSuitShape }, { loadSpadesSuitShape }] = await Promise.all([
4
4
  import("./clubs/index.lazy.js"),
5
5
  import("./diamonds/index.lazy.js"),
package/browser/utils.js CHANGED
@@ -1,4 +1,4 @@
1
- import { double, doublePI, getStyleFromRgb, half, originPoint, safeDocument, triple, } from "@tsparticles/engine";
1
+ import { double, doublePI, getStyleFromRgb, half, originPoint, triple } from "@tsparticles/engine";
2
2
  import { SuitType } from "./SuitType.js";
3
3
  import { drawPath } from "@tsparticles/path-utils";
4
4
  import { paths } from "./paths.js";
@@ -11,17 +11,7 @@ export function drawRoundedCard(ctx, radius, cardData, hdr, flipped, canvasSetti
11
11
  const cacheKey = getCacheKey(radius, hdr, cardData), cardWidth = radius * cardWidthRatio, cardHeight = radius * cardHeightRatio, halfWidth = cardWidth * half, halfHeight = cardHeight * half;
12
12
  let cachedData = cardsCache.get(cacheKey);
13
13
  if (!cachedData) {
14
- let cacheCanvas, cacheCtx;
15
- if (typeof OffscreenCanvas === "undefined") {
16
- cacheCanvas = safeDocument().createElement("canvas");
17
- cacheCanvas.width = cardWidth;
18
- cacheCanvas.height = cardHeight;
19
- cacheCtx = cacheCanvas.getContext("2d", canvasSettings);
20
- }
21
- else {
22
- cacheCanvas = new OffscreenCanvas(cardWidth, cardHeight);
23
- cacheCtx = cacheCanvas.getContext("2d", canvasSettings);
24
- }
14
+ const cacheCanvas = new OffscreenCanvas(cardWidth, cardHeight), cacheCtx = cacheCanvas.getContext("2d", canvasSettings);
25
15
  if (cacheCtx) {
26
16
  cacheCtx.translate(halfWidth, halfHeight);
27
17
  drawRoundedCardFront(cacheCtx, radius, cardData, hdr);
@@ -1,6 +1,6 @@
1
1
  import { CardDrawer } from "./CardDrawer.js";
2
2
  export async function loadFullCardsShape(engine) {
3
- engine.checkVersion("4.0.0-beta.16");
3
+ engine.checkVersion("4.0.0-beta.17");
4
4
  await engine.pluginManager.register(e => {
5
5
  e.pluginManager.addShape(["card"], container => Promise.resolve(new CardDrawer(container)));
6
6
  });
@@ -1,5 +1,5 @@
1
1
  export async function loadFullCardsShape(engine) {
2
- engine.checkVersion("4.0.0-beta.16");
2
+ engine.checkVersion("4.0.0-beta.17");
3
3
  await engine.pluginManager.register(e => {
4
4
  e.pluginManager.addShape(["card"], async (container) => {
5
5
  const { CardDrawer } = await import("./CardDrawer.js");
@@ -1,6 +1,6 @@
1
1
  import { ClubDrawer } from "./ClubDrawer.js";
2
2
  export async function loadClubsSuitShape(engine) {
3
- engine.checkVersion("4.0.0-beta.16");
3
+ engine.checkVersion("4.0.0-beta.17");
4
4
  await engine.pluginManager.register(e => {
5
5
  e.pluginManager.addShape(["club", "clubs"], () => Promise.resolve(new ClubDrawer()));
6
6
  });
@@ -1,5 +1,5 @@
1
1
  export async function loadClubsSuitShape(engine) {
2
- engine.checkVersion("4.0.0-beta.16");
2
+ engine.checkVersion("4.0.0-beta.17");
3
3
  await engine.pluginManager.register(e => {
4
4
  e.pluginManager.addShape(["club", "clubs"], async () => {
5
5
  const { ClubDrawer } = await import("./ClubDrawer.js");
@@ -1,6 +1,6 @@
1
1
  import { DiamondDrawer } from "./DiamondDrawer.js";
2
2
  export async function loadDiamondsSuitShape(engine) {
3
- engine.checkVersion("4.0.0-beta.16");
3
+ engine.checkVersion("4.0.0-beta.17");
4
4
  await engine.pluginManager.register(e => {
5
5
  e.pluginManager.addShape(["diamond", "diamonds"], () => Promise.resolve(new DiamondDrawer()));
6
6
  });
@@ -1,5 +1,5 @@
1
1
  export async function loadDiamondsSuitShape(engine) {
2
- engine.checkVersion("4.0.0-beta.16");
2
+ engine.checkVersion("4.0.0-beta.17");
3
3
  await engine.pluginManager.register(e => {
4
4
  e.pluginManager.addShape(["diamond", "diamonds"], async () => {
5
5
  const { DiamondDrawer } = await import("./DiamondDrawer.js");
@@ -1,6 +1,6 @@
1
1
  import { HeartDrawer } from "./HeartDrawer.js";
2
2
  export async function loadHeartsSuitShape(engine) {
3
- engine.checkVersion("4.0.0-beta.16");
3
+ engine.checkVersion("4.0.0-beta.17");
4
4
  await engine.pluginManager.register(e => {
5
5
  e.pluginManager.addShape(["heart", "hearts"], () => Promise.resolve(new HeartDrawer()));
6
6
  });
@@ -1,5 +1,5 @@
1
1
  export async function loadHeartsSuitShape(engine) {
2
- engine.checkVersion("4.0.0-beta.16");
2
+ engine.checkVersion("4.0.0-beta.17");
3
3
  await engine.pluginManager.register(e => {
4
4
  e.pluginManager.addShape(["heart", "hearts"], async () => {
5
5
  const { HeartDrawer } = await import("./HeartDrawer.js");
package/cjs/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { loadCardSuitsShape } from "./suits.js";
2
2
  import { loadFullCardsShape } from "./cards/index.js";
3
3
  export async function loadCardsShape(engine) {
4
- engine.checkVersion("4.0.0-beta.16");
4
+ engine.checkVersion("4.0.0-beta.17");
5
5
  await Promise.all([
6
6
  loadFullCardsShape(engine),
7
7
  loadCardSuitsShape(engine),
package/cjs/index.lazy.js CHANGED
@@ -1,5 +1,5 @@
1
1
  export async function loadCardsShape(engine) {
2
- engine.checkVersion("4.0.0-beta.16");
2
+ engine.checkVersion("4.0.0-beta.17");
3
3
  await engine.pluginManager.register(async (e) => {
4
4
  const [{ loadFullCardsShape }, { loadCardSuitsShape }] = await Promise.all([
5
5
  import("./cards/index.lazy.js"),
@@ -1,6 +1,6 @@
1
1
  import { SpadeDrawer } from "./SpadeDrawer.js";
2
2
  export async function loadSpadesSuitShape(engine) {
3
- engine.checkVersion("4.0.0-beta.16");
3
+ engine.checkVersion("4.0.0-beta.17");
4
4
  await engine.pluginManager.register(e => {
5
5
  e.pluginManager.addShape(["spade", "spades"], () => Promise.resolve(new SpadeDrawer()));
6
6
  });
@@ -1,5 +1,5 @@
1
1
  export async function loadSpadesSuitShape(engine) {
2
- engine.checkVersion("4.0.0-beta.16");
2
+ engine.checkVersion("4.0.0-beta.17");
3
3
  await engine.pluginManager.register(e => {
4
4
  e.pluginManager.addShape(["spade", "spades"], async () => {
5
5
  const { SpadeDrawer } = await import("./SpadeDrawer.js");
package/cjs/suits.js CHANGED
@@ -3,7 +3,7 @@ import { loadDiamondsSuitShape } from "./diamonds/index.js";
3
3
  import { loadHeartsSuitShape } from "./hearts/index.js";
4
4
  import { loadSpadesSuitShape } from "./spades/index.js";
5
5
  export async function loadCardSuitsShape(engine) {
6
- engine.checkVersion("4.0.0-beta.16");
6
+ engine.checkVersion("4.0.0-beta.17");
7
7
  await Promise.all([
8
8
  loadClubsSuitShape(engine),
9
9
  loadDiamondsSuitShape(engine),
package/cjs/suits.lazy.js CHANGED
@@ -1,5 +1,5 @@
1
1
  export async function loadCardSuitsShape(engine) {
2
- engine.checkVersion("4.0.0-beta.16");
2
+ engine.checkVersion("4.0.0-beta.17");
3
3
  const [{ loadClubsSuitShape }, { loadDiamondsSuitShape }, { loadHeartsSuitShape }, { loadSpadesSuitShape }] = await Promise.all([
4
4
  import("./clubs/index.lazy.js"),
5
5
  import("./diamonds/index.lazy.js"),
package/cjs/utils.js CHANGED
@@ -1,4 +1,4 @@
1
- import { double, doublePI, getStyleFromRgb, half, originPoint, safeDocument, triple, } from "@tsparticles/engine";
1
+ import { double, doublePI, getStyleFromRgb, half, originPoint, triple } from "@tsparticles/engine";
2
2
  import { SuitType } from "./SuitType.js";
3
3
  import { drawPath } from "@tsparticles/path-utils";
4
4
  import { paths } from "./paths.js";
@@ -11,17 +11,7 @@ export function drawRoundedCard(ctx, radius, cardData, hdr, flipped, canvasSetti
11
11
  const cacheKey = getCacheKey(radius, hdr, cardData), cardWidth = radius * cardWidthRatio, cardHeight = radius * cardHeightRatio, halfWidth = cardWidth * half, halfHeight = cardHeight * half;
12
12
  let cachedData = cardsCache.get(cacheKey);
13
13
  if (!cachedData) {
14
- let cacheCanvas, cacheCtx;
15
- if (typeof OffscreenCanvas === "undefined") {
16
- cacheCanvas = safeDocument().createElement("canvas");
17
- cacheCanvas.width = cardWidth;
18
- cacheCanvas.height = cardHeight;
19
- cacheCtx = cacheCanvas.getContext("2d", canvasSettings);
20
- }
21
- else {
22
- cacheCanvas = new OffscreenCanvas(cardWidth, cardHeight);
23
- cacheCtx = cacheCanvas.getContext("2d", canvasSettings);
24
- }
14
+ const cacheCanvas = new OffscreenCanvas(cardWidth, cardHeight), cacheCtx = cacheCanvas.getContext("2d", canvasSettings);
25
15
  if (cacheCtx) {
26
16
  cacheCtx.translate(halfWidth, halfHeight);
27
17
  drawRoundedCardFront(cacheCtx, radius, cardData, hdr);
@@ -1,6 +1,6 @@
1
1
  import { CardDrawer } from "./CardDrawer.js";
2
2
  export async function loadFullCardsShape(engine) {
3
- engine.checkVersion("4.0.0-beta.16");
3
+ engine.checkVersion("4.0.0-beta.17");
4
4
  await engine.pluginManager.register(e => {
5
5
  e.pluginManager.addShape(["card"], container => Promise.resolve(new CardDrawer(container)));
6
6
  });
@@ -1,5 +1,5 @@
1
1
  export async function loadFullCardsShape(engine) {
2
- engine.checkVersion("4.0.0-beta.16");
2
+ engine.checkVersion("4.0.0-beta.17");
3
3
  await engine.pluginManager.register(e => {
4
4
  e.pluginManager.addShape(["card"], async (container) => {
5
5
  const { CardDrawer } = await import("./CardDrawer.js");
@@ -1,6 +1,6 @@
1
1
  import { ClubDrawer } from "./ClubDrawer.js";
2
2
  export async function loadClubsSuitShape(engine) {
3
- engine.checkVersion("4.0.0-beta.16");
3
+ engine.checkVersion("4.0.0-beta.17");
4
4
  await engine.pluginManager.register(e => {
5
5
  e.pluginManager.addShape(["club", "clubs"], () => Promise.resolve(new ClubDrawer()));
6
6
  });
@@ -1,5 +1,5 @@
1
1
  export async function loadClubsSuitShape(engine) {
2
- engine.checkVersion("4.0.0-beta.16");
2
+ engine.checkVersion("4.0.0-beta.17");
3
3
  await engine.pluginManager.register(e => {
4
4
  e.pluginManager.addShape(["club", "clubs"], async () => {
5
5
  const { ClubDrawer } = await import("./ClubDrawer.js");
@@ -1,6 +1,6 @@
1
1
  import { DiamondDrawer } from "./DiamondDrawer.js";
2
2
  export async function loadDiamondsSuitShape(engine) {
3
- engine.checkVersion("4.0.0-beta.16");
3
+ engine.checkVersion("4.0.0-beta.17");
4
4
  await engine.pluginManager.register(e => {
5
5
  e.pluginManager.addShape(["diamond", "diamonds"], () => Promise.resolve(new DiamondDrawer()));
6
6
  });
@@ -1,5 +1,5 @@
1
1
  export async function loadDiamondsSuitShape(engine) {
2
- engine.checkVersion("4.0.0-beta.16");
2
+ engine.checkVersion("4.0.0-beta.17");
3
3
  await engine.pluginManager.register(e => {
4
4
  e.pluginManager.addShape(["diamond", "diamonds"], async () => {
5
5
  const { DiamondDrawer } = await import("./DiamondDrawer.js");
@@ -1,6 +1,6 @@
1
1
  import { HeartDrawer } from "./HeartDrawer.js";
2
2
  export async function loadHeartsSuitShape(engine) {
3
- engine.checkVersion("4.0.0-beta.16");
3
+ engine.checkVersion("4.0.0-beta.17");
4
4
  await engine.pluginManager.register(e => {
5
5
  e.pluginManager.addShape(["heart", "hearts"], () => Promise.resolve(new HeartDrawer()));
6
6
  });
@@ -1,5 +1,5 @@
1
1
  export async function loadHeartsSuitShape(engine) {
2
- engine.checkVersion("4.0.0-beta.16");
2
+ engine.checkVersion("4.0.0-beta.17");
3
3
  await engine.pluginManager.register(e => {
4
4
  e.pluginManager.addShape(["heart", "hearts"], async () => {
5
5
  const { HeartDrawer } = await import("./HeartDrawer.js");
package/esm/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { loadCardSuitsShape } from "./suits.js";
2
2
  import { loadFullCardsShape } from "./cards/index.js";
3
3
  export async function loadCardsShape(engine) {
4
- engine.checkVersion("4.0.0-beta.16");
4
+ engine.checkVersion("4.0.0-beta.17");
5
5
  await Promise.all([
6
6
  loadFullCardsShape(engine),
7
7
  loadCardSuitsShape(engine),
package/esm/index.lazy.js CHANGED
@@ -1,5 +1,5 @@
1
1
  export async function loadCardsShape(engine) {
2
- engine.checkVersion("4.0.0-beta.16");
2
+ engine.checkVersion("4.0.0-beta.17");
3
3
  await engine.pluginManager.register(async (e) => {
4
4
  const [{ loadFullCardsShape }, { loadCardSuitsShape }] = await Promise.all([
5
5
  import("./cards/index.lazy.js"),
@@ -1,6 +1,6 @@
1
1
  import { SpadeDrawer } from "./SpadeDrawer.js";
2
2
  export async function loadSpadesSuitShape(engine) {
3
- engine.checkVersion("4.0.0-beta.16");
3
+ engine.checkVersion("4.0.0-beta.17");
4
4
  await engine.pluginManager.register(e => {
5
5
  e.pluginManager.addShape(["spade", "spades"], () => Promise.resolve(new SpadeDrawer()));
6
6
  });
@@ -1,5 +1,5 @@
1
1
  export async function loadSpadesSuitShape(engine) {
2
- engine.checkVersion("4.0.0-beta.16");
2
+ engine.checkVersion("4.0.0-beta.17");
3
3
  await engine.pluginManager.register(e => {
4
4
  e.pluginManager.addShape(["spade", "spades"], async () => {
5
5
  const { SpadeDrawer } = await import("./SpadeDrawer.js");
package/esm/suits.js CHANGED
@@ -3,7 +3,7 @@ import { loadDiamondsSuitShape } from "./diamonds/index.js";
3
3
  import { loadHeartsSuitShape } from "./hearts/index.js";
4
4
  import { loadSpadesSuitShape } from "./spades/index.js";
5
5
  export async function loadCardSuitsShape(engine) {
6
- engine.checkVersion("4.0.0-beta.16");
6
+ engine.checkVersion("4.0.0-beta.17");
7
7
  await Promise.all([
8
8
  loadClubsSuitShape(engine),
9
9
  loadDiamondsSuitShape(engine),
package/esm/suits.lazy.js CHANGED
@@ -1,5 +1,5 @@
1
1
  export async function loadCardSuitsShape(engine) {
2
- engine.checkVersion("4.0.0-beta.16");
2
+ engine.checkVersion("4.0.0-beta.17");
3
3
  const [{ loadClubsSuitShape }, { loadDiamondsSuitShape }, { loadHeartsSuitShape }, { loadSpadesSuitShape }] = await Promise.all([
4
4
  import("./clubs/index.lazy.js"),
5
5
  import("./diamonds/index.lazy.js"),
package/esm/utils.js CHANGED
@@ -1,4 +1,4 @@
1
- import { double, doublePI, getStyleFromRgb, half, originPoint, safeDocument, triple, } from "@tsparticles/engine";
1
+ import { double, doublePI, getStyleFromRgb, half, originPoint, triple } from "@tsparticles/engine";
2
2
  import { SuitType } from "./SuitType.js";
3
3
  import { drawPath } from "@tsparticles/path-utils";
4
4
  import { paths } from "./paths.js";
@@ -11,17 +11,7 @@ export function drawRoundedCard(ctx, radius, cardData, hdr, flipped, canvasSetti
11
11
  const cacheKey = getCacheKey(radius, hdr, cardData), cardWidth = radius * cardWidthRatio, cardHeight = radius * cardHeightRatio, halfWidth = cardWidth * half, halfHeight = cardHeight * half;
12
12
  let cachedData = cardsCache.get(cacheKey);
13
13
  if (!cachedData) {
14
- let cacheCanvas, cacheCtx;
15
- if (typeof OffscreenCanvas === "undefined") {
16
- cacheCanvas = safeDocument().createElement("canvas");
17
- cacheCanvas.width = cardWidth;
18
- cacheCanvas.height = cardHeight;
19
- cacheCtx = cacheCanvas.getContext("2d", canvasSettings);
20
- }
21
- else {
22
- cacheCanvas = new OffscreenCanvas(cardWidth, cardHeight);
23
- cacheCtx = cacheCanvas.getContext("2d", canvasSettings);
24
- }
14
+ const cacheCanvas = new OffscreenCanvas(cardWidth, cardHeight), cacheCtx = cacheCanvas.getContext("2d", canvasSettings);
25
15
  if (cacheCtx) {
26
16
  cacheCtx.translate(halfWidth, halfHeight);
27
17
  drawRoundedCardFront(cacheCtx, radius, cardData, hdr);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tsparticles/shape-cards",
3
- "version": "4.0.0-beta.16",
3
+ "version": "4.0.0-beta.17",
4
4
  "description": "tsParticles cards shape",
5
5
  "homepage": "https://particles.js.org",
6
6
  "repository": {
@@ -190,8 +190,8 @@
190
190
  "./package.json": "./package.json"
191
191
  },
192
192
  "peerDependencies": {
193
- "@tsparticles/engine": "4.0.0-beta.16",
194
- "@tsparticles/path-utils": "4.0.0-beta.16"
193
+ "@tsparticles/engine": "4.0.0-beta.17",
194
+ "@tsparticles/path-utils": "4.0.0-beta.17"
195
195
  },
196
196
  "publishConfig": {
197
197
  "access": "public"
package/report.html CHANGED
@@ -4930,7 +4930,7 @@ var drawChart = (function (exports) {
4930
4930
  </script>
4931
4931
  <script>
4932
4932
  /*<!--*/
4933
- const data = {"version":2,"tree":{"name":"root","children":[{"name":"tsparticles.shape.cards.js","children":[{"name":"dist/browser","children":[{"uid":"a02d0438-1","name":"SuitType.js"},{"uid":"a02d0438-3","name":"paths.js"},{"name":"clubs","children":[{"uid":"a02d0438-5","name":"ClubDrawer.js"},{"uid":"a02d0438-7","name":"index.js"}]},{"name":"diamonds","children":[{"uid":"a02d0438-9","name":"DiamondDrawer.js"},{"uid":"a02d0438-11","name":"index.js"}]},{"name":"hearts","children":[{"uid":"a02d0438-13","name":"HeartDrawer.js"},{"uid":"a02d0438-15","name":"index.js"}]},{"name":"spades","children":[{"uid":"a02d0438-17","name":"SpadeDrawer.js"},{"uid":"a02d0438-19","name":"index.js"}]},{"uid":"a02d0438-21","name":"suits.js"},{"uid":"a02d0438-23","name":"utils.js"},{"name":"cards","children":[{"uid":"a02d0438-25","name":"CardDrawer.js"},{"uid":"a02d0438-27","name":"index.js"}]},{"uid":"a02d0438-29","name":"index.js"},{"uid":"a02d0438-31","name":"browser.js"}]}]}],"isRoot":true},"nodeParts":{"a02d0438-1":{"renderedLength":239,"gzipLength":0,"brotliLength":0,"metaUid":"a02d0438-0"},"a02d0438-3":{"renderedLength":5744,"gzipLength":0,"brotliLength":0,"metaUid":"a02d0438-2"},"a02d0438-5":{"renderedLength":167,"gzipLength":0,"brotliLength":0,"metaUid":"a02d0438-4"},"a02d0438-7":{"renderedLength":260,"gzipLength":0,"brotliLength":0,"metaUid":"a02d0438-6"},"a02d0438-9":{"renderedLength":173,"gzipLength":0,"brotliLength":0,"metaUid":"a02d0438-8"},"a02d0438-11":{"renderedLength":272,"gzipLength":0,"brotliLength":0,"metaUid":"a02d0438-10"},"a02d0438-13":{"renderedLength":169,"gzipLength":0,"brotliLength":0,"metaUid":"a02d0438-12"},"a02d0438-15":{"renderedLength":264,"gzipLength":0,"brotliLength":0,"metaUid":"a02d0438-14"},"a02d0438-17":{"renderedLength":169,"gzipLength":0,"brotliLength":0,"metaUid":"a02d0438-16"},"a02d0438-19":{"renderedLength":264,"gzipLength":0,"brotliLength":0,"metaUid":"a02d0438-18"},"a02d0438-21":{"renderedLength":304,"gzipLength":0,"brotliLength":0,"metaUid":"a02d0438-20"},"a02d0438-23":{"renderedLength":5692,"gzipLength":0,"brotliLength":0,"metaUid":"a02d0438-22"},"a02d0438-25":{"renderedLength":849,"gzipLength":0,"brotliLength":0,"metaUid":"a02d0438-24"},"a02d0438-27":{"renderedLength":267,"gzipLength":0,"brotliLength":0,"metaUid":"a02d0438-26"},"a02d0438-29":{"renderedLength":215,"gzipLength":0,"brotliLength":0,"metaUid":"a02d0438-28"},"a02d0438-31":{"renderedLength":171,"gzipLength":0,"brotliLength":0,"metaUid":"a02d0438-30"}},"nodeMetas":{"a02d0438-0":{"id":"/dist/browser/SuitType.js","moduleParts":{"tsparticles.shape.cards.js":"a02d0438-1"},"imported":[],"importedBy":[{"uid":"a02d0438-22"},{"uid":"a02d0438-2"}]},"a02d0438-2":{"id":"/dist/browser/paths.js","moduleParts":{"tsparticles.shape.cards.js":"a02d0438-3"},"imported":[{"uid":"a02d0438-33"},{"uid":"a02d0438-32"},{"uid":"a02d0438-0"}],"importedBy":[{"uid":"a02d0438-4"},{"uid":"a02d0438-8"},{"uid":"a02d0438-12"},{"uid":"a02d0438-16"},{"uid":"a02d0438-22"}]},"a02d0438-4":{"id":"/dist/browser/clubs/ClubDrawer.js","moduleParts":{"tsparticles.shape.cards.js":"a02d0438-5"},"imported":[{"uid":"a02d0438-33"},{"uid":"a02d0438-2"}],"importedBy":[{"uid":"a02d0438-6"}]},"a02d0438-6":{"id":"/dist/browser/clubs/index.js","moduleParts":{"tsparticles.shape.cards.js":"a02d0438-7"},"imported":[{"uid":"a02d0438-4"}],"importedBy":[{"uid":"a02d0438-20"}]},"a02d0438-8":{"id":"/dist/browser/diamonds/DiamondDrawer.js","moduleParts":{"tsparticles.shape.cards.js":"a02d0438-9"},"imported":[{"uid":"a02d0438-33"},{"uid":"a02d0438-2"}],"importedBy":[{"uid":"a02d0438-10"}]},"a02d0438-10":{"id":"/dist/browser/diamonds/index.js","moduleParts":{"tsparticles.shape.cards.js":"a02d0438-11"},"imported":[{"uid":"a02d0438-8"}],"importedBy":[{"uid":"a02d0438-20"}]},"a02d0438-12":{"id":"/dist/browser/hearts/HeartDrawer.js","moduleParts":{"tsparticles.shape.cards.js":"a02d0438-13"},"imported":[{"uid":"a02d0438-33"},{"uid":"a02d0438-2"}],"importedBy":[{"uid":"a02d0438-14"}]},"a02d0438-14":{"id":"/dist/browser/hearts/index.js","moduleParts":{"tsparticles.shape.cards.js":"a02d0438-15"},"imported":[{"uid":"a02d0438-12"}],"importedBy":[{"uid":"a02d0438-20"}]},"a02d0438-16":{"id":"/dist/browser/spades/SpadeDrawer.js","moduleParts":{"tsparticles.shape.cards.js":"a02d0438-17"},"imported":[{"uid":"a02d0438-33"},{"uid":"a02d0438-2"}],"importedBy":[{"uid":"a02d0438-18"}]},"a02d0438-18":{"id":"/dist/browser/spades/index.js","moduleParts":{"tsparticles.shape.cards.js":"a02d0438-19"},"imported":[{"uid":"a02d0438-16"}],"importedBy":[{"uid":"a02d0438-20"}]},"a02d0438-20":{"id":"/dist/browser/suits.js","moduleParts":{"tsparticles.shape.cards.js":"a02d0438-21"},"imported":[{"uid":"a02d0438-6"},{"uid":"a02d0438-10"},{"uid":"a02d0438-14"},{"uid":"a02d0438-18"}],"importedBy":[{"uid":"a02d0438-28"}]},"a02d0438-22":{"id":"/dist/browser/utils.js","moduleParts":{"tsparticles.shape.cards.js":"a02d0438-23"},"imported":[{"uid":"a02d0438-32"},{"uid":"a02d0438-0"},{"uid":"a02d0438-33"},{"uid":"a02d0438-2"}],"importedBy":[{"uid":"a02d0438-24"}]},"a02d0438-24":{"id":"/dist/browser/cards/CardDrawer.js","moduleParts":{"tsparticles.shape.cards.js":"a02d0438-25"},"imported":[{"uid":"a02d0438-32"},{"uid":"a02d0438-22"}],"importedBy":[{"uid":"a02d0438-26"}]},"a02d0438-26":{"id":"/dist/browser/cards/index.js","moduleParts":{"tsparticles.shape.cards.js":"a02d0438-27"},"imported":[{"uid":"a02d0438-24"}],"importedBy":[{"uid":"a02d0438-28"}]},"a02d0438-28":{"id":"/dist/browser/index.js","moduleParts":{"tsparticles.shape.cards.js":"a02d0438-29"},"imported":[{"uid":"a02d0438-20"},{"uid":"a02d0438-26"}],"importedBy":[{"uid":"a02d0438-30"}]},"a02d0438-30":{"id":"/dist/browser/browser.js","moduleParts":{"tsparticles.shape.cards.js":"a02d0438-31"},"imported":[{"uid":"a02d0438-28"}],"importedBy":[],"isEntry":true},"a02d0438-32":{"id":"@tsparticles/engine","moduleParts":{},"imported":[],"importedBy":[{"uid":"a02d0438-24"},{"uid":"a02d0438-22"},{"uid":"a02d0438-2"}],"isExternal":true},"a02d0438-33":{"id":"@tsparticles/path-utils","moduleParts":{},"imported":[],"importedBy":[{"uid":"a02d0438-4"},{"uid":"a02d0438-8"},{"uid":"a02d0438-12"},{"uid":"a02d0438-16"},{"uid":"a02d0438-22"},{"uid":"a02d0438-2"}],"isExternal":true}},"env":{"rollup":"4.60.3"},"options":{"gzip":false,"brotli":false,"sourcemap":false}};
4933
+ const data = {"version":2,"tree":{"name":"root","children":[{"name":"tsparticles.shape.cards.js","children":[{"name":"dist/browser","children":[{"uid":"83355d8c-1","name":"SuitType.js"},{"uid":"83355d8c-3","name":"paths.js"},{"name":"clubs","children":[{"uid":"83355d8c-5","name":"ClubDrawer.js"},{"uid":"83355d8c-7","name":"index.js"}]},{"name":"diamonds","children":[{"uid":"83355d8c-9","name":"DiamondDrawer.js"},{"uid":"83355d8c-11","name":"index.js"}]},{"name":"hearts","children":[{"uid":"83355d8c-13","name":"HeartDrawer.js"},{"uid":"83355d8c-15","name":"index.js"}]},{"name":"spades","children":[{"uid":"83355d8c-17","name":"SpadeDrawer.js"},{"uid":"83355d8c-19","name":"index.js"}]},{"uid":"83355d8c-21","name":"suits.js"},{"uid":"83355d8c-23","name":"utils.js"},{"name":"cards","children":[{"uid":"83355d8c-25","name":"CardDrawer.js"},{"uid":"83355d8c-27","name":"index.js"}]},{"uid":"83355d8c-29","name":"index.js"},{"uid":"83355d8c-31","name":"browser.js"}]}]}],"isRoot":true},"nodeParts":{"83355d8c-1":{"renderedLength":239,"gzipLength":0,"brotliLength":0,"metaUid":"83355d8c-0"},"83355d8c-3":{"renderedLength":5744,"gzipLength":0,"brotliLength":0,"metaUid":"83355d8c-2"},"83355d8c-5":{"renderedLength":167,"gzipLength":0,"brotliLength":0,"metaUid":"83355d8c-4"},"83355d8c-7":{"renderedLength":260,"gzipLength":0,"brotliLength":0,"metaUid":"83355d8c-6"},"83355d8c-9":{"renderedLength":173,"gzipLength":0,"brotliLength":0,"metaUid":"83355d8c-8"},"83355d8c-11":{"renderedLength":272,"gzipLength":0,"brotliLength":0,"metaUid":"83355d8c-10"},"83355d8c-13":{"renderedLength":169,"gzipLength":0,"brotliLength":0,"metaUid":"83355d8c-12"},"83355d8c-15":{"renderedLength":264,"gzipLength":0,"brotliLength":0,"metaUid":"83355d8c-14"},"83355d8c-17":{"renderedLength":169,"gzipLength":0,"brotliLength":0,"metaUid":"83355d8c-16"},"83355d8c-19":{"renderedLength":264,"gzipLength":0,"brotliLength":0,"metaUid":"83355d8c-18"},"83355d8c-21":{"renderedLength":304,"gzipLength":0,"brotliLength":0,"metaUid":"83355d8c-20"},"83355d8c-23":{"renderedLength":5248,"gzipLength":0,"brotliLength":0,"metaUid":"83355d8c-22"},"83355d8c-25":{"renderedLength":849,"gzipLength":0,"brotliLength":0,"metaUid":"83355d8c-24"},"83355d8c-27":{"renderedLength":267,"gzipLength":0,"brotliLength":0,"metaUid":"83355d8c-26"},"83355d8c-29":{"renderedLength":215,"gzipLength":0,"brotliLength":0,"metaUid":"83355d8c-28"},"83355d8c-31":{"renderedLength":171,"gzipLength":0,"brotliLength":0,"metaUid":"83355d8c-30"}},"nodeMetas":{"83355d8c-0":{"id":"/dist/browser/SuitType.js","moduleParts":{"tsparticles.shape.cards.js":"83355d8c-1"},"imported":[],"importedBy":[{"uid":"83355d8c-22"},{"uid":"83355d8c-2"}]},"83355d8c-2":{"id":"/dist/browser/paths.js","moduleParts":{"tsparticles.shape.cards.js":"83355d8c-3"},"imported":[{"uid":"83355d8c-33"},{"uid":"83355d8c-32"},{"uid":"83355d8c-0"}],"importedBy":[{"uid":"83355d8c-4"},{"uid":"83355d8c-8"},{"uid":"83355d8c-12"},{"uid":"83355d8c-16"},{"uid":"83355d8c-22"}]},"83355d8c-4":{"id":"/dist/browser/clubs/ClubDrawer.js","moduleParts":{"tsparticles.shape.cards.js":"83355d8c-5"},"imported":[{"uid":"83355d8c-33"},{"uid":"83355d8c-2"}],"importedBy":[{"uid":"83355d8c-6"}]},"83355d8c-6":{"id":"/dist/browser/clubs/index.js","moduleParts":{"tsparticles.shape.cards.js":"83355d8c-7"},"imported":[{"uid":"83355d8c-4"}],"importedBy":[{"uid":"83355d8c-20"}]},"83355d8c-8":{"id":"/dist/browser/diamonds/DiamondDrawer.js","moduleParts":{"tsparticles.shape.cards.js":"83355d8c-9"},"imported":[{"uid":"83355d8c-33"},{"uid":"83355d8c-2"}],"importedBy":[{"uid":"83355d8c-10"}]},"83355d8c-10":{"id":"/dist/browser/diamonds/index.js","moduleParts":{"tsparticles.shape.cards.js":"83355d8c-11"},"imported":[{"uid":"83355d8c-8"}],"importedBy":[{"uid":"83355d8c-20"}]},"83355d8c-12":{"id":"/dist/browser/hearts/HeartDrawer.js","moduleParts":{"tsparticles.shape.cards.js":"83355d8c-13"},"imported":[{"uid":"83355d8c-33"},{"uid":"83355d8c-2"}],"importedBy":[{"uid":"83355d8c-14"}]},"83355d8c-14":{"id":"/dist/browser/hearts/index.js","moduleParts":{"tsparticles.shape.cards.js":"83355d8c-15"},"imported":[{"uid":"83355d8c-12"}],"importedBy":[{"uid":"83355d8c-20"}]},"83355d8c-16":{"id":"/dist/browser/spades/SpadeDrawer.js","moduleParts":{"tsparticles.shape.cards.js":"83355d8c-17"},"imported":[{"uid":"83355d8c-33"},{"uid":"83355d8c-2"}],"importedBy":[{"uid":"83355d8c-18"}]},"83355d8c-18":{"id":"/dist/browser/spades/index.js","moduleParts":{"tsparticles.shape.cards.js":"83355d8c-19"},"imported":[{"uid":"83355d8c-16"}],"importedBy":[{"uid":"83355d8c-20"}]},"83355d8c-20":{"id":"/dist/browser/suits.js","moduleParts":{"tsparticles.shape.cards.js":"83355d8c-21"},"imported":[{"uid":"83355d8c-6"},{"uid":"83355d8c-10"},{"uid":"83355d8c-14"},{"uid":"83355d8c-18"}],"importedBy":[{"uid":"83355d8c-28"}]},"83355d8c-22":{"id":"/dist/browser/utils.js","moduleParts":{"tsparticles.shape.cards.js":"83355d8c-23"},"imported":[{"uid":"83355d8c-32"},{"uid":"83355d8c-0"},{"uid":"83355d8c-33"},{"uid":"83355d8c-2"}],"importedBy":[{"uid":"83355d8c-24"}]},"83355d8c-24":{"id":"/dist/browser/cards/CardDrawer.js","moduleParts":{"tsparticles.shape.cards.js":"83355d8c-25"},"imported":[{"uid":"83355d8c-32"},{"uid":"83355d8c-22"}],"importedBy":[{"uid":"83355d8c-26"}]},"83355d8c-26":{"id":"/dist/browser/cards/index.js","moduleParts":{"tsparticles.shape.cards.js":"83355d8c-27"},"imported":[{"uid":"83355d8c-24"}],"importedBy":[{"uid":"83355d8c-28"}]},"83355d8c-28":{"id":"/dist/browser/index.js","moduleParts":{"tsparticles.shape.cards.js":"83355d8c-29"},"imported":[{"uid":"83355d8c-20"},{"uid":"83355d8c-26"}],"importedBy":[{"uid":"83355d8c-30"}]},"83355d8c-30":{"id":"/dist/browser/browser.js","moduleParts":{"tsparticles.shape.cards.js":"83355d8c-31"},"imported":[{"uid":"83355d8c-28"}],"importedBy":[],"isEntry":true},"83355d8c-32":{"id":"@tsparticles/engine","moduleParts":{},"imported":[],"importedBy":[{"uid":"83355d8c-24"},{"uid":"83355d8c-22"},{"uid":"83355d8c-2"}],"isExternal":true},"83355d8c-33":{"id":"@tsparticles/path-utils","moduleParts":{},"imported":[],"importedBy":[{"uid":"83355d8c-4"},{"uid":"83355d8c-8"},{"uid":"83355d8c-12"},{"uid":"83355d8c-16"},{"uid":"83355d8c-22"},{"uid":"83355d8c-2"}],"isExternal":true}},"env":{"rollup":"4.60.3"},"options":{"gzip":false,"brotli":false,"sourcemap":false}};
4934
4934
 
4935
4935
  const run = () => {
4936
4936
  const width = window.innerWidth;
@@ -1,5 +1,5 @@
1
1
  (function(g){g.__tsParticlesInternals=g.__tsParticlesInternals||{};g.__tsParticlesInternals.bundles=g.__tsParticlesInternals.bundles||{};g.__tsParticlesInternals.effects=g.__tsParticlesInternals.effects||{};g.__tsParticlesInternals.engine=g.__tsParticlesInternals.engine||{};g.__tsParticlesInternals.interactions=g.__tsParticlesInternals.interactions||{};g.__tsParticlesInternals.palettes=g.__tsParticlesInternals.palettes||{};g.__tsParticlesInternals.paths=g.__tsParticlesInternals.paths||{};g.__tsParticlesInternals.plugins=g.__tsParticlesInternals.plugins||{};g.__tsParticlesInternals.plugins=g.__tsParticlesInternals.plugins||{};g.__tsParticlesInternals.plugins.emittersShapes=g.__tsParticlesInternals.plugins.emittersShapes||{};g.__tsParticlesInternals.presets=g.__tsParticlesInternals.presets||{};g.__tsParticlesInternals.shapes=g.__tsParticlesInternals.shapes||{};g.__tsParticlesInternals.updaters=g.__tsParticlesInternals.updaters||{};g.__tsParticlesInternals.utils=g.__tsParticlesInternals.utils||{};g.__tsParticlesInternals.canvas=g.__tsParticlesInternals.canvas||{};g.__tsParticlesInternals.canvas=g.__tsParticlesInternals.canvas||{};g.__tsParticlesInternals.canvas.utils=g.__tsParticlesInternals.canvas.utils||{};g.__tsParticlesInternals.path=g.__tsParticlesInternals.path||{};g.__tsParticlesInternals.path=g.__tsParticlesInternals.path||{};g.__tsParticlesInternals.path.utils=g.__tsParticlesInternals.path.utils||{};var __tsProxyFactory=typeof Proxy!=="undefined"?function(obj){return new Proxy(obj,{get:function(target,key){if(!(key in target)){target[key]={};}return target[key];}});}:function(obj){return obj;};g.__tsParticlesInternals.bundles=__tsProxyFactory(g.__tsParticlesInternals.bundles);g.__tsParticlesInternals.effects=__tsProxyFactory(g.__tsParticlesInternals.effects);g.__tsParticlesInternals.interactions=__tsProxyFactory(g.__tsParticlesInternals.interactions);g.__tsParticlesInternals.palettes=__tsProxyFactory(g.__tsParticlesInternals.palettes);g.__tsParticlesInternals.paths=__tsProxyFactory(g.__tsParticlesInternals.paths);g.__tsParticlesInternals.plugins=__tsProxyFactory(g.__tsParticlesInternals.plugins);g.__tsParticlesInternals.plugins.emittersShapes=__tsProxyFactory(g.__tsParticlesInternals.plugins.emittersShapes);g.__tsParticlesInternals.presets=__tsProxyFactory(g.__tsParticlesInternals.presets);g.__tsParticlesInternals.shapes=__tsProxyFactory(g.__tsParticlesInternals.shapes);g.__tsParticlesInternals.updaters=__tsProxyFactory(g.__tsParticlesInternals.updaters);g.__tsParticlesInternals.utils=__tsProxyFactory(g.__tsParticlesInternals.utils);g.__tsParticlesInternals.canvas=__tsProxyFactory(g.__tsParticlesInternals.canvas);g.__tsParticlesInternals.path=__tsProxyFactory(g.__tsParticlesInternals.path);g.tsparticlesInternalExports=g.tsparticlesInternalExports||{};})(typeof globalThis!=="undefined"?globalThis:typeof window!=="undefined"?window:this);
2
- /* Shape v4.0.0-beta.16 */
2
+ /* Shape v4.0.0-beta.17 */
3
3
  (function (global, factory) {
4
4
  typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@tsparticles/path-utils'), require('@tsparticles/engine')) :
5
5
  typeof define === 'function' && define.amd ? define(['exports', '@tsparticles/path-utils', '@tsparticles/engine'], factory) :
@@ -194,7 +194,7 @@
194
194
  }
195
195
 
196
196
  async function loadClubsSuitShape(engine) {
197
- engine.checkVersion("4.0.0-beta.16");
197
+ engine.checkVersion("4.0.0-beta.17");
198
198
  await engine.pluginManager.register(e => {
199
199
  e.pluginManager.addShape(["club", "clubs"], () => Promise.resolve(new ClubDrawer()));
200
200
  });
@@ -208,7 +208,7 @@
208
208
  }
209
209
 
210
210
  async function loadDiamondsSuitShape(engine) {
211
- engine.checkVersion("4.0.0-beta.16");
211
+ engine.checkVersion("4.0.0-beta.17");
212
212
  await engine.pluginManager.register(e => {
213
213
  e.pluginManager.addShape(["diamond", "diamonds"], () => Promise.resolve(new DiamondDrawer()));
214
214
  });
@@ -222,7 +222,7 @@
222
222
  }
223
223
 
224
224
  async function loadHeartsSuitShape(engine) {
225
- engine.checkVersion("4.0.0-beta.16");
225
+ engine.checkVersion("4.0.0-beta.17");
226
226
  await engine.pluginManager.register(e => {
227
227
  e.pluginManager.addShape(["heart", "hearts"], () => Promise.resolve(new HeartDrawer()));
228
228
  });
@@ -236,14 +236,14 @@
236
236
  }
237
237
 
238
238
  async function loadSpadesSuitShape(engine) {
239
- engine.checkVersion("4.0.0-beta.16");
239
+ engine.checkVersion("4.0.0-beta.17");
240
240
  await engine.pluginManager.register(e => {
241
241
  e.pluginManager.addShape(["spade", "spades"], () => Promise.resolve(new SpadeDrawer()));
242
242
  });
243
243
  }
244
244
 
245
245
  async function loadCardSuitsShape(engine) {
246
- engine.checkVersion("4.0.0-beta.16");
246
+ engine.checkVersion("4.0.0-beta.17");
247
247
  await Promise.all([
248
248
  loadClubsSuitShape(engine),
249
249
  loadDiamondsSuitShape(engine),
@@ -261,17 +261,7 @@
261
261
  const cacheKey = getCacheKey(radius, hdr, cardData), cardWidth = radius * cardWidthRatio, cardHeight = radius * cardHeightRatio, halfWidth = cardWidth * engine.half, halfHeight = cardHeight * engine.half;
262
262
  let cachedData = cardsCache.get(cacheKey);
263
263
  if (!cachedData) {
264
- let cacheCanvas, cacheCtx;
265
- if (typeof OffscreenCanvas === "undefined") {
266
- cacheCanvas = engine.safeDocument().createElement("canvas");
267
- cacheCanvas.width = cardWidth;
268
- cacheCanvas.height = cardHeight;
269
- cacheCtx = cacheCanvas.getContext("2d", canvasSettings);
270
- }
271
- else {
272
- cacheCanvas = new OffscreenCanvas(cardWidth, cardHeight);
273
- cacheCtx = cacheCanvas.getContext("2d", canvasSettings);
274
- }
264
+ const cacheCanvas = new OffscreenCanvas(cardWidth, cardHeight), cacheCtx = cacheCanvas.getContext("2d", canvasSettings);
275
265
  if (cacheCtx) {
276
266
  cacheCtx.translate(halfWidth, halfHeight);
277
267
  drawRoundedCardFront(cacheCtx, radius, cardData, hdr);
@@ -374,14 +364,14 @@
374
364
  }
375
365
 
376
366
  async function loadFullCardsShape(engine) {
377
- engine.checkVersion("4.0.0-beta.16");
367
+ engine.checkVersion("4.0.0-beta.17");
378
368
  await engine.pluginManager.register(e => {
379
369
  e.pluginManager.addShape(["card"], container => Promise.resolve(new CardDrawer(container)));
380
370
  });
381
371
  }
382
372
 
383
373
  async function loadCardsShape(engine) {
384
- engine.checkVersion("4.0.0-beta.16");
374
+ engine.checkVersion("4.0.0-beta.17");
385
375
  await Promise.all([
386
376
  loadFullCardsShape(engine),
387
377
  loadCardSuitsShape(engine),
@@ -1 +1 @@
1
- !function(e){e.__tsParticlesInternals=e.__tsParticlesInternals||{},e.__tsParticlesInternals.bundles=e.__tsParticlesInternals.bundles||{},e.__tsParticlesInternals.effects=e.__tsParticlesInternals.effects||{},e.__tsParticlesInternals.engine=e.__tsParticlesInternals.engine||{},e.__tsParticlesInternals.interactions=e.__tsParticlesInternals.interactions||{},e.__tsParticlesInternals.palettes=e.__tsParticlesInternals.palettes||{},e.__tsParticlesInternals.paths=e.__tsParticlesInternals.paths||{},e.__tsParticlesInternals.plugins=e.__tsParticlesInternals.plugins||{},e.__tsParticlesInternals.plugins=e.__tsParticlesInternals.plugins||{},e.__tsParticlesInternals.plugins.emittersShapes=e.__tsParticlesInternals.plugins.emittersShapes||{},e.__tsParticlesInternals.presets=e.__tsParticlesInternals.presets||{},e.__tsParticlesInternals.shapes=e.__tsParticlesInternals.shapes||{},e.__tsParticlesInternals.updaters=e.__tsParticlesInternals.updaters||{},e.__tsParticlesInternals.utils=e.__tsParticlesInternals.utils||{},e.__tsParticlesInternals.canvas=e.__tsParticlesInternals.canvas||{},e.__tsParticlesInternals.canvas=e.__tsParticlesInternals.canvas||{},e.__tsParticlesInternals.canvas.utils=e.__tsParticlesInternals.canvas.utils||{},e.__tsParticlesInternals.path=e.__tsParticlesInternals.path||{},e.__tsParticlesInternals.path=e.__tsParticlesInternals.path||{},e.__tsParticlesInternals.path.utils=e.__tsParticlesInternals.path.utils||{};var t="undefined"!=typeof Proxy?function(e){return new Proxy(e,{get:function(e,t){return t in e||(e[t]={}),e[t]}})}:function(e){return e};e.__tsParticlesInternals.bundles=t(e.__tsParticlesInternals.bundles),e.__tsParticlesInternals.effects=t(e.__tsParticlesInternals.effects),e.__tsParticlesInternals.interactions=t(e.__tsParticlesInternals.interactions),e.__tsParticlesInternals.palettes=t(e.__tsParticlesInternals.palettes),e.__tsParticlesInternals.paths=t(e.__tsParticlesInternals.paths),e.__tsParticlesInternals.plugins=t(e.__tsParticlesInternals.plugins),e.__tsParticlesInternals.plugins.emittersShapes=t(e.__tsParticlesInternals.plugins.emittersShapes),e.__tsParticlesInternals.presets=t(e.__tsParticlesInternals.presets),e.__tsParticlesInternals.shapes=t(e.__tsParticlesInternals.shapes),e.__tsParticlesInternals.updaters=t(e.__tsParticlesInternals.updaters),e.__tsParticlesInternals.utils=t(e.__tsParticlesInternals.utils),e.__tsParticlesInternals.canvas=t(e.__tsParticlesInternals.canvas),e.__tsParticlesInternals.path=t(e.__tsParticlesInternals.path),e.tsparticlesInternalExports=e.tsparticlesInternalExports||{}}("undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:this),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@tsparticles/path-utils"),require("@tsparticles/engine")):"function"==typeof define&&define.amd?define(["exports","@tsparticles/path-utils","@tsparticles/engine"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).__tsParticlesInternals=e.__tsParticlesInternals||{},e.__tsParticlesInternals.shapes=e.__tsParticlesInternals.shapes||{},e.__tsParticlesInternals.shapes.cards=e.__tsParticlesInternals.shapes.cards||{}),e.__tsParticlesInternals.path.utils,e.__tsParticlesInternals.engine)}(this,function(e,t,s){"use strict";var a;!function(e){e.hearts="hearts",e.diamonds="diamonds",e.clubs="clubs",e.spades="spades"}(a||(a={}));const n=s.quarter*s.half,r=s.half,l=r*s.half,i=-r,c=-l,p=r*n,o=r*s.threeQuarter,_={half:!0,segments:[{type:t.SegmentType.bezier,values:[{x:s.empty,y:i},{x:s.empty,y:i},{x:l,y:i},{x:l,y:c}]},{type:t.SegmentType.bezier,values:[{x:l,y:c},{x:l,y:c},{x:r,y:c},{x:r,y:s.empty}]},{type:t.SegmentType.bezier,values:[{x:r,y:s.empty},{x:r,y:s.empty},{x:r,y:l},{x:l,y:l}]},{type:t.SegmentType.bezier,values:[{x:l,y:l},{x:l,y:l},{x:p,y:l},{x:p,y:p}]},{type:t.SegmentType.bezier,values:[{x:p,y:p},{x:p,y:l},{x:l,y:r},{x:l,y:r}]},{type:t.SegmentType.bezier,values:[{x:l,y:r},{x:l,y:r},{x:s.empty,y:r},{x:s.empty,y:r}]}]},y={half:!0,segments:[{type:t.SegmentType.bezier,values:[{x:s.empty,y:r},{x:s.empty,y:r},{x:o,y:s.empty},{x:o,y:s.empty}]},{type:t.SegmentType.bezier,values:[{x:o,y:s.empty},{x:o,y:s.empty},{x:s.empty,y:i},{x:s.empty,y:i}]}]},u={half:!0,segments:[{type:t.SegmentType.bezier,values:[{x:s.empty,y:r},{x:s.empty,y:r},{x:r,y:s.empty},{x:r,y:c}]},{type:t.SegmentType.bezier,values:[{x:r,y:c},{x:r,y:c},{x:r,y:i},{x:l,y:i}]},{type:t.SegmentType.bezier,values:[{x:l,y:i},{x:l,y:i},{x:s.empty,y:i},{x:s.empty,y:c}]}]},d={half:!0,segments:[{type:t.SegmentType.bezier,values:[{x:s.empty,y:i},{x:s.empty,y:i},{x:r,y:c},{x:r,y:s.empty}]},{type:t.SegmentType.bezier,values:[{x:r,y:s.empty},{x:r,y:s.empty},{x:r,y:l},{x:l,y:l}]},{type:t.SegmentType.bezier,values:[{x:l,y:l},{x:l,y:l},{x:p,y:l},{x:p,y:p}]},{type:t.SegmentType.bezier,values:[{x:p,y:p},{x:p,y:l},{x:l,y:r},{x:l,y:r}]},{type:t.SegmentType.bezier,values:[{x:l,y:r},{x:l,y:r},{x:s.empty,y:r},{x:s.empty,y:r}]}]},g={[a.hearts]:u,[a.diamonds]:y,[a.clubs]:_,[a.spades]:d};class h{draw(e){const{context:s,radius:a}=e;t.drawPath(s,a,g.clubs)}}async function P(e){e.checkVersion("4.0.0-beta.16"),await e.pluginManager.register(e=>{e.pluginManager.addShape(["club","clubs"],()=>Promise.resolve(new h))})}class x{draw(e){const{context:s,radius:a}=e;t.drawPath(s,a,g.diamonds)}}async function I(e){e.checkVersion("4.0.0-beta.16"),await e.pluginManager.register(e=>{e.pluginManager.addShape(["diamond","diamonds"],()=>Promise.resolve(new x))})}class f{draw(e){const{context:s,radius:a}=e;t.drawPath(s,a,g.hearts)}}async function m(e){e.checkVersion("4.0.0-beta.16"),await e.pluginManager.register(e=>{e.pluginManager.addShape(["heart","hearts"],()=>Promise.resolve(new f))})}class b{draw(e){const{context:s,radius:a}=e;t.drawPath(s,a,g.spades)}}async function v(e){e.checkVersion("4.0.0-beta.16"),await e.pluginManager.register(e=>{e.pluginManager.addShape(["spade","spades"],()=>Promise.resolve(new b))})}async function S(e){e.checkVersion("4.0.0-beta.16"),await Promise.all([P(e),I(e),m(e),v(e)])}const T=s.double*s.double/s.triple,w=s.double,z=new Map,C={r:215,g:20,b:20},M={r:18,g:18,b:18};function k(e,t,a,n,r,l){if(r)!function(e,t){V(e,t)}(e,t);else{const r=function(e,t,s){return`${e.toFixed(2)}-${t?"hdr":"sdr"}-${s.suit}-${s.value}`}(t,n,a),i=t*T,c=t*w,p=i*s.half,o=c*s.half;let _=z.get(r);if(!_){let e,y;"undefined"==typeof OffscreenCanvas?(e=s.safeDocument().createElement("canvas"),e.width=i,e.height=c,y=e.getContext("2d",l)):(e=new OffscreenCanvas(i,c),y=e.getContext("2d",l)),y&&(y.translate(p,o),q(y,t,a,n),_=e instanceof HTMLCanvasElement?e:e.transferToImageBitmap(),z.set(r,_))}_?e.drawImage(_,-p,-o,i,c):q(e,t,a,n)}}function q(e,n,r,l){const{suit:i,value:c}=r,p=n*w,o=n*T*s.half,_=p*s.half,y=.2*n,u=.4*n,d=.3*n,h=.7*n,P=.25*n,x=.1*n,I=i===a.hearts||i===a.diamonds?s.getStyleFromRgb(C,l):s.getStyleFromRgb(M,l);e.save(),V(e,n),e.fillStyle=s.getStyleFromRgb({r:255,g:255,b:255},l),e.fill(),e.strokeStyle=s.getStyleFromRgb({r:0,g:0,b:0},l),e.stroke(),e.fillStyle=I,e.font=`bold ${u.toString()}px Arial, serif`,e.textAlign="left",e.textBaseline="middle";const f=-o+y+x,m=-_+y+u*s.half;e.save(),e.translate(f,m),e.beginPath(),t.drawPath(e,d,g[i]),e.fill(),e.restore(),e.fillText(c,f+P,m),e.save(),e.translate(o-y-x,_-y-u*s.half),e.rotate(Math.PI),e.save(),e.beginPath(),t.drawPath(e,d,g[i]),e.fill(),e.restore(),e.fillText(c,s.originPoint.x+P,s.originPoint.y),e.restore(),e.save(),e.beginPath(),t.drawPath(e,h,g[i]),e.fillStyle=I,e.fill(),e.restore(),e.beginPath(),e.arc(s.originPoint.x,s.originPoint.y,0,0,s.doublePI,!1),e.closePath(),e.restore()}function V(e,t){const a=t*w,n=t*T*s.half,r=a*s.half,l=.2*t;e.beginPath(),e.moveTo(-n+l,-r),e.lineTo(n-l,-r),e.quadraticCurveTo(n,-r,n,-r+l),e.lineTo(n,r-l),e.quadraticCurveTo(n,r,n-l,r),e.lineTo(-n+l,r),e.quadraticCurveTo(-n,r,-n,r-l),e.lineTo(-n,-r+l),e.quadraticCurveTo(-n,-r,-n+l,-r),e.closePath()}class E{_container;constructor(e){this._container=e}draw(e){const{context:t,particle:s,opacity:a,radius:n}=e;if(!s.cardData)return;const r=t.globalAlpha,l=this._container;t.globalAlpha=a,k(t,n,s.cardData,l.hdr,s.isShowingBack(),l.canvas.render.settings),t.globalAlpha=r}particleInit(e,t){const a=t.shapeData;a&&(t.cardData=s.deepExtend({},a))}}async function A(e){e.checkVersion("4.0.0-beta.16"),await e.pluginManager.register(e=>{e.pluginManager.addShape(["card"],e=>Promise.resolve(new E(e)))})}async function D(e){e.checkVersion("4.0.0-beta.16"),await Promise.all([A(e),S(e)])}const F=globalThis;F.__tsParticlesInternals=F.__tsParticlesInternals??{},F.loadCardsShape=D,e.loadCardsShape=D}),Object.assign(globalThis.window||globalThis,{loadCardsShape:(globalThis.__tsParticlesInternals.shapes.cards||{}).loadCardsShape}),delete(globalThis.window||globalThis).tsparticlesInternalExports;
1
+ !function(e){e.__tsParticlesInternals=e.__tsParticlesInternals||{},e.__tsParticlesInternals.bundles=e.__tsParticlesInternals.bundles||{},e.__tsParticlesInternals.effects=e.__tsParticlesInternals.effects||{},e.__tsParticlesInternals.engine=e.__tsParticlesInternals.engine||{},e.__tsParticlesInternals.interactions=e.__tsParticlesInternals.interactions||{},e.__tsParticlesInternals.palettes=e.__tsParticlesInternals.palettes||{},e.__tsParticlesInternals.paths=e.__tsParticlesInternals.paths||{},e.__tsParticlesInternals.plugins=e.__tsParticlesInternals.plugins||{},e.__tsParticlesInternals.plugins=e.__tsParticlesInternals.plugins||{},e.__tsParticlesInternals.plugins.emittersShapes=e.__tsParticlesInternals.plugins.emittersShapes||{},e.__tsParticlesInternals.presets=e.__tsParticlesInternals.presets||{},e.__tsParticlesInternals.shapes=e.__tsParticlesInternals.shapes||{},e.__tsParticlesInternals.updaters=e.__tsParticlesInternals.updaters||{},e.__tsParticlesInternals.utils=e.__tsParticlesInternals.utils||{},e.__tsParticlesInternals.canvas=e.__tsParticlesInternals.canvas||{},e.__tsParticlesInternals.canvas=e.__tsParticlesInternals.canvas||{},e.__tsParticlesInternals.canvas.utils=e.__tsParticlesInternals.canvas.utils||{},e.__tsParticlesInternals.path=e.__tsParticlesInternals.path||{},e.__tsParticlesInternals.path=e.__tsParticlesInternals.path||{},e.__tsParticlesInternals.path.utils=e.__tsParticlesInternals.path.utils||{};var t="undefined"!=typeof Proxy?function(e){return new Proxy(e,{get:function(e,t){return t in e||(e[t]={}),e[t]}})}:function(e){return e};e.__tsParticlesInternals.bundles=t(e.__tsParticlesInternals.bundles),e.__tsParticlesInternals.effects=t(e.__tsParticlesInternals.effects),e.__tsParticlesInternals.interactions=t(e.__tsParticlesInternals.interactions),e.__tsParticlesInternals.palettes=t(e.__tsParticlesInternals.palettes),e.__tsParticlesInternals.paths=t(e.__tsParticlesInternals.paths),e.__tsParticlesInternals.plugins=t(e.__tsParticlesInternals.plugins),e.__tsParticlesInternals.plugins.emittersShapes=t(e.__tsParticlesInternals.plugins.emittersShapes),e.__tsParticlesInternals.presets=t(e.__tsParticlesInternals.presets),e.__tsParticlesInternals.shapes=t(e.__tsParticlesInternals.shapes),e.__tsParticlesInternals.updaters=t(e.__tsParticlesInternals.updaters),e.__tsParticlesInternals.utils=t(e.__tsParticlesInternals.utils),e.__tsParticlesInternals.canvas=t(e.__tsParticlesInternals.canvas),e.__tsParticlesInternals.path=t(e.__tsParticlesInternals.path),e.tsparticlesInternalExports=e.tsparticlesInternalExports||{}}("undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:this),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@tsparticles/path-utils"),require("@tsparticles/engine")):"function"==typeof define&&define.amd?define(["exports","@tsparticles/path-utils","@tsparticles/engine"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).__tsParticlesInternals=e.__tsParticlesInternals||{},e.__tsParticlesInternals.shapes=e.__tsParticlesInternals.shapes||{},e.__tsParticlesInternals.shapes.cards=e.__tsParticlesInternals.shapes.cards||{}),e.__tsParticlesInternals.path.utils,e.__tsParticlesInternals.engine)}(this,function(e,t,s){"use strict";var a;!function(e){e.hearts="hearts",e.diamonds="diamonds",e.clubs="clubs",e.spades="spades"}(a||(a={}));const n=s.quarter*s.half,r=s.half,l=r*s.half,i=-r,c=-l,p=r*n,o=r*s.threeQuarter,_={half:!0,segments:[{type:t.SegmentType.bezier,values:[{x:s.empty,y:i},{x:s.empty,y:i},{x:l,y:i},{x:l,y:c}]},{type:t.SegmentType.bezier,values:[{x:l,y:c},{x:l,y:c},{x:r,y:c},{x:r,y:s.empty}]},{type:t.SegmentType.bezier,values:[{x:r,y:s.empty},{x:r,y:s.empty},{x:r,y:l},{x:l,y:l}]},{type:t.SegmentType.bezier,values:[{x:l,y:l},{x:l,y:l},{x:p,y:l},{x:p,y:p}]},{type:t.SegmentType.bezier,values:[{x:p,y:p},{x:p,y:l},{x:l,y:r},{x:l,y:r}]},{type:t.SegmentType.bezier,values:[{x:l,y:r},{x:l,y:r},{x:s.empty,y:r},{x:s.empty,y:r}]}]},y={half:!0,segments:[{type:t.SegmentType.bezier,values:[{x:s.empty,y:r},{x:s.empty,y:r},{x:o,y:s.empty},{x:o,y:s.empty}]},{type:t.SegmentType.bezier,values:[{x:o,y:s.empty},{x:o,y:s.empty},{x:s.empty,y:i},{x:s.empty,y:i}]}]},u={half:!0,segments:[{type:t.SegmentType.bezier,values:[{x:s.empty,y:r},{x:s.empty,y:r},{x:r,y:s.empty},{x:r,y:c}]},{type:t.SegmentType.bezier,values:[{x:r,y:c},{x:r,y:c},{x:r,y:i},{x:l,y:i}]},{type:t.SegmentType.bezier,values:[{x:l,y:i},{x:l,y:i},{x:s.empty,y:i},{x:s.empty,y:c}]}]},d={half:!0,segments:[{type:t.SegmentType.bezier,values:[{x:s.empty,y:i},{x:s.empty,y:i},{x:r,y:c},{x:r,y:s.empty}]},{type:t.SegmentType.bezier,values:[{x:r,y:s.empty},{x:r,y:s.empty},{x:r,y:l},{x:l,y:l}]},{type:t.SegmentType.bezier,values:[{x:l,y:l},{x:l,y:l},{x:p,y:l},{x:p,y:p}]},{type:t.SegmentType.bezier,values:[{x:p,y:p},{x:p,y:l},{x:l,y:r},{x:l,y:r}]},{type:t.SegmentType.bezier,values:[{x:l,y:r},{x:l,y:r},{x:s.empty,y:r},{x:s.empty,y:r}]}]},P={[a.hearts]:u,[a.diamonds]:y,[a.clubs]:_,[a.spades]:d};class g{draw(e){const{context:s,radius:a}=e;t.drawPath(s,a,P.clubs)}}async function h(e){e.checkVersion("4.0.0-beta.17"),await e.pluginManager.register(e=>{e.pluginManager.addShape(["club","clubs"],()=>Promise.resolve(new g))})}class x{draw(e){const{context:s,radius:a}=e;t.drawPath(s,a,P.diamonds)}}async function I(e){e.checkVersion("4.0.0-beta.17"),await e.pluginManager.register(e=>{e.pluginManager.addShape(["diamond","diamonds"],()=>Promise.resolve(new x))})}class f{draw(e){const{context:s,radius:a}=e;t.drawPath(s,a,P.hearts)}}async function m(e){e.checkVersion("4.0.0-beta.17"),await e.pluginManager.register(e=>{e.pluginManager.addShape(["heart","hearts"],()=>Promise.resolve(new f))})}class b{draw(e){const{context:s,radius:a}=e;t.drawPath(s,a,P.spades)}}async function v(e){e.checkVersion("4.0.0-beta.17"),await e.pluginManager.register(e=>{e.pluginManager.addShape(["spade","spades"],()=>Promise.resolve(new b))})}async function S(e){e.checkVersion("4.0.0-beta.17"),await Promise.all([h(e),I(e),m(e),v(e)])}const T=s.double*s.double/s.triple,w=s.double,z=new Map,M={r:215,g:20,b:20},C={r:18,g:18,b:18};function k(e,t,a,n,r,l){if(r)!function(e,t){V(e,t)}(e,t);else{const r=function(e,t,s){return`${e.toFixed(2)}-${t?"hdr":"sdr"}-${s.suit}-${s.value}`}(t,n,a),i=t*T,c=t*w,p=i*s.half,o=c*s.half;let _=z.get(r);if(!_){const e=new OffscreenCanvas(i,c),s=e.getContext("2d",l);s&&(s.translate(p,o),q(s,t,a,n),_=e instanceof HTMLCanvasElement?e:e.transferToImageBitmap(),z.set(r,_))}_?e.drawImage(_,-p,-o,i,c):q(e,t,a,n)}}function q(e,n,r,l){const{suit:i,value:c}=r,p=n*w,o=n*T*s.half,_=p*s.half,y=.2*n,u=.4*n,d=.3*n,g=.7*n,h=.25*n,x=.1*n,I=i===a.hearts||i===a.diamonds?s.getStyleFromRgb(M,l):s.getStyleFromRgb(C,l);e.save(),V(e,n),e.fillStyle=s.getStyleFromRgb({r:255,g:255,b:255},l),e.fill(),e.strokeStyle=s.getStyleFromRgb({r:0,g:0,b:0},l),e.stroke(),e.fillStyle=I,e.font=`bold ${u.toString()}px Arial, serif`,e.textAlign="left",e.textBaseline="middle";const f=-o+y+x,m=-_+y+u*s.half;e.save(),e.translate(f,m),e.beginPath(),t.drawPath(e,d,P[i]),e.fill(),e.restore(),e.fillText(c,f+h,m),e.save(),e.translate(o-y-x,_-y-u*s.half),e.rotate(Math.PI),e.save(),e.beginPath(),t.drawPath(e,d,P[i]),e.fill(),e.restore(),e.fillText(c,s.originPoint.x+h,s.originPoint.y),e.restore(),e.save(),e.beginPath(),t.drawPath(e,g,P[i]),e.fillStyle=I,e.fill(),e.restore(),e.beginPath(),e.arc(s.originPoint.x,s.originPoint.y,0,0,s.doublePI,!1),e.closePath(),e.restore()}function V(e,t){const a=t*w,n=t*T*s.half,r=a*s.half,l=.2*t;e.beginPath(),e.moveTo(-n+l,-r),e.lineTo(n-l,-r),e.quadraticCurveTo(n,-r,n,-r+l),e.lineTo(n,r-l),e.quadraticCurveTo(n,r,n-l,r),e.lineTo(-n+l,r),e.quadraticCurveTo(-n,r,-n,r-l),e.lineTo(-n,-r+l),e.quadraticCurveTo(-n,-r,-n+l,-r),e.closePath()}class A{_container;constructor(e){this._container=e}draw(e){const{context:t,particle:s,opacity:a,radius:n}=e;if(!s.cardData)return;const r=t.globalAlpha,l=this._container;t.globalAlpha=a,k(t,n,s.cardData,l.hdr,s.isShowingBack(),l.canvas.render.settings),t.globalAlpha=r}particleInit(e,t){const a=t.shapeData;a&&(t.cardData=s.deepExtend({},a))}}async function E(e){e.checkVersion("4.0.0-beta.17"),await e.pluginManager.register(e=>{e.pluginManager.addShape(["card"],e=>Promise.resolve(new A(e)))})}async function F(e){e.checkVersion("4.0.0-beta.17"),await Promise.all([E(e),S(e)])}const $=globalThis;$.__tsParticlesInternals=$.__tsParticlesInternals??{},$.loadCardsShape=F,e.loadCardsShape=F}),Object.assign(globalThis.window||globalThis,{loadCardsShape:(globalThis.__tsParticlesInternals.shapes.cards||{}).loadCardsShape}),delete(globalThis.window||globalThis).tsparticlesInternalExports;
package/types/utils.d.ts CHANGED
@@ -1,3 +1,2 @@
1
- import { type CanvasContextType } from "@tsparticles/engine";
2
1
  import type { ICardData } from "./ICardData.js";
3
- export declare function drawRoundedCard(ctx: CanvasContextType, radius: number, cardData: ICardData, hdr: boolean, flipped: boolean, canvasSettings?: CanvasRenderingContext2DSettings): void;
2
+ export declare function drawRoundedCard(ctx: OffscreenCanvasRenderingContext2D, radius: number, cardData: ICardData, hdr: boolean, flipped: boolean, canvasSettings?: CanvasRenderingContext2DSettings): void;