@tsparticles/engine 3.2.2 → 3.4.0

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 (281) hide show
  1. package/README.md +0 -4
  2. package/browser/Core/Canvas.js +34 -29
  3. package/browser/Core/Container.js +60 -47
  4. package/browser/Core/Engine.js +82 -74
  5. package/browser/Core/Particle.js +40 -26
  6. package/browser/Core/Particles.js +51 -52
  7. package/browser/Core/Utils/EventListeners.js +18 -17
  8. package/browser/Core/Utils/ExternalInteractorBase.js +2 -1
  9. package/browser/Core/Utils/InteractionManager.js +7 -6
  10. package/browser/Core/Utils/ParticlesInteractorBase.js +2 -1
  11. package/browser/Core/Utils/QuadTree.js +1 -1
  12. package/browser/Core/Utils/Ranges.js +5 -4
  13. package/browser/Enums/AnimationStatus.js +5 -1
  14. package/browser/Enums/Directions/MoveDirection.js +14 -1
  15. package/browser/Enums/Directions/OutModeDirection.js +7 -1
  16. package/browser/Enums/Directions/RotateDirection.js +6 -1
  17. package/browser/Enums/InteractivityDetect.js +6 -1
  18. package/browser/Enums/Modes/AnimationMode.js +7 -1
  19. package/browser/Enums/Modes/CollisionMode.js +6 -1
  20. package/browser/Enums/Modes/LimitMode.js +5 -1
  21. package/browser/Enums/Modes/OutMode.js +8 -1
  22. package/browser/Enums/Modes/PixelMode.js +5 -1
  23. package/browser/Enums/Modes/ResponsiveMode.js +5 -1
  24. package/browser/Enums/Modes/ThemeMode.js +6 -1
  25. package/browser/Enums/Types/AlterType.js +5 -1
  26. package/browser/Enums/Types/DestroyType.js +6 -1
  27. package/browser/Enums/Types/DivType.js +5 -1
  28. package/browser/Enums/Types/EasingType.js +30 -1
  29. package/browser/Enums/Types/EventType.js +15 -1
  30. package/browser/Enums/Types/GradientType.js +6 -1
  31. package/browser/Enums/Types/InteractorType.js +5 -1
  32. package/browser/Enums/Types/ParticleOutType.js +6 -1
  33. package/browser/Enums/Types/StartValueType.js +6 -1
  34. package/browser/Options/Classes/AnimationOptions.js +4 -2
  35. package/browser/Options/Classes/Interactivity/Events/DivEvent.js +2 -1
  36. package/browser/Options/Classes/Interactivity/Events/Events.js +1 -1
  37. package/browser/Options/Classes/Interactivity/Interactivity.js +2 -1
  38. package/browser/Options/Classes/ManualParticle.js +2 -1
  39. package/browser/Options/Classes/Options.js +14 -12
  40. package/browser/Options/Classes/Particles/Collisions/Collisions.js +2 -1
  41. package/browser/Options/Classes/Particles/Move/Move.js +2 -1
  42. package/browser/Options/Classes/Particles/Move/MoveCenter.js +2 -1
  43. package/browser/Options/Classes/Particles/Move/OutModes.js +2 -1
  44. package/browser/Options/Classes/Particles/Number/ParticlesNumberLimit.js +2 -1
  45. package/browser/Options/Classes/Particles/Opacity/OpacityAnimation.js +2 -1
  46. package/browser/Options/Classes/Particles/ParticlesOptions.js +1 -1
  47. package/browser/Options/Classes/Particles/Size/SizeAnimation.js +2 -1
  48. package/browser/Options/Classes/Responsive.js +5 -4
  49. package/browser/Options/Classes/Theme/ThemeDefault.js +2 -1
  50. package/browser/Types/RangeType.js +5 -1
  51. package/browser/Utils/CanvasUtils.js +27 -21
  52. package/browser/Utils/ColorUtils.js +17 -9
  53. package/browser/Utils/EventDispatcher.js +1 -1
  54. package/browser/Utils/HslColorManager.js +11 -4
  55. package/browser/Utils/NumberUtils.js +11 -10
  56. package/browser/Utils/RgbColorManager.js +11 -4
  57. package/browser/Utils/Utils.js +37 -31
  58. package/cjs/Core/Canvas.js +34 -29
  59. package/cjs/Core/Container.js +60 -47
  60. package/cjs/Core/Engine.js +82 -97
  61. package/cjs/Core/Particle.js +40 -26
  62. package/cjs/Core/Particles.js +52 -76
  63. package/cjs/Core/Utils/EventListeners.js +18 -17
  64. package/cjs/Core/Utils/ExternalInteractorBase.js +2 -1
  65. package/cjs/Core/Utils/InteractionManager.js +7 -6
  66. package/cjs/Core/Utils/ParticlesInteractorBase.js +2 -1
  67. package/cjs/Core/Utils/QuadTree.js +1 -1
  68. package/cjs/Core/Utils/Ranges.js +5 -4
  69. package/cjs/Enums/AnimationStatus.js +6 -0
  70. package/cjs/Enums/Directions/MoveDirection.js +15 -0
  71. package/cjs/Enums/Directions/OutModeDirection.js +8 -0
  72. package/cjs/Enums/Directions/RotateDirection.js +7 -0
  73. package/cjs/Enums/InteractivityDetect.js +7 -0
  74. package/cjs/Enums/Modes/AnimationMode.js +8 -0
  75. package/cjs/Enums/Modes/CollisionMode.js +7 -0
  76. package/cjs/Enums/Modes/LimitMode.js +6 -0
  77. package/cjs/Enums/Modes/OutMode.js +9 -0
  78. package/cjs/Enums/Modes/PixelMode.js +6 -0
  79. package/cjs/Enums/Modes/ResponsiveMode.js +6 -0
  80. package/cjs/Enums/Modes/ThemeMode.js +7 -0
  81. package/cjs/Enums/Types/AlterType.js +6 -0
  82. package/cjs/Enums/Types/DestroyType.js +7 -0
  83. package/cjs/Enums/Types/DivType.js +6 -0
  84. package/cjs/Enums/Types/EasingType.js +31 -0
  85. package/cjs/Enums/Types/EventType.js +16 -0
  86. package/cjs/Enums/Types/GradientType.js +7 -0
  87. package/cjs/Enums/Types/InteractorType.js +6 -0
  88. package/cjs/Enums/Types/ParticleOutType.js +7 -0
  89. package/cjs/Enums/Types/StartValueType.js +7 -0
  90. package/cjs/Options/Classes/AnimationOptions.js +4 -2
  91. package/cjs/Options/Classes/Interactivity/Events/DivEvent.js +2 -1
  92. package/cjs/Options/Classes/Interactivity/Events/Events.js +1 -1
  93. package/cjs/Options/Classes/Interactivity/Interactivity.js +2 -1
  94. package/cjs/Options/Classes/ManualParticle.js +2 -1
  95. package/cjs/Options/Classes/Options.js +14 -12
  96. package/cjs/Options/Classes/Particles/Collisions/Collisions.js +2 -1
  97. package/cjs/Options/Classes/Particles/Move/Move.js +2 -1
  98. package/cjs/Options/Classes/Particles/Move/MoveCenter.js +2 -1
  99. package/cjs/Options/Classes/Particles/Move/OutModes.js +2 -1
  100. package/cjs/Options/Classes/Particles/Number/ParticlesNumberLimit.js +2 -1
  101. package/cjs/Options/Classes/Particles/Opacity/OpacityAnimation.js +2 -1
  102. package/cjs/Options/Classes/Particles/ParticlesOptions.js +1 -1
  103. package/cjs/Options/Classes/Particles/Size/SizeAnimation.js +2 -1
  104. package/cjs/Options/Classes/Responsive.js +5 -4
  105. package/cjs/Options/Classes/Theme/ThemeDefault.js +2 -1
  106. package/cjs/Types/RangeType.js +6 -0
  107. package/cjs/Utils/CanvasUtils.js +27 -21
  108. package/cjs/Utils/ColorUtils.js +17 -9
  109. package/cjs/Utils/EventDispatcher.js +1 -1
  110. package/cjs/Utils/HslColorManager.js +11 -4
  111. package/cjs/Utils/NumberUtils.js +11 -10
  112. package/cjs/Utils/RgbColorManager.js +11 -4
  113. package/cjs/Utils/Utils.js +37 -31
  114. package/esm/Core/Canvas.js +34 -29
  115. package/esm/Core/Container.js +60 -47
  116. package/esm/Core/Engine.js +82 -74
  117. package/esm/Core/Particle.js +40 -26
  118. package/esm/Core/Particles.js +51 -52
  119. package/esm/Core/Utils/EventListeners.js +18 -17
  120. package/esm/Core/Utils/ExternalInteractorBase.js +2 -1
  121. package/esm/Core/Utils/InteractionManager.js +7 -6
  122. package/esm/Core/Utils/ParticlesInteractorBase.js +2 -1
  123. package/esm/Core/Utils/QuadTree.js +1 -1
  124. package/esm/Core/Utils/Ranges.js +5 -4
  125. package/esm/Enums/AnimationStatus.js +5 -1
  126. package/esm/Enums/Directions/MoveDirection.js +14 -1
  127. package/esm/Enums/Directions/OutModeDirection.js +7 -1
  128. package/esm/Enums/Directions/RotateDirection.js +6 -1
  129. package/esm/Enums/InteractivityDetect.js +6 -1
  130. package/esm/Enums/Modes/AnimationMode.js +7 -1
  131. package/esm/Enums/Modes/CollisionMode.js +6 -1
  132. package/esm/Enums/Modes/LimitMode.js +5 -1
  133. package/esm/Enums/Modes/OutMode.js +8 -1
  134. package/esm/Enums/Modes/PixelMode.js +5 -1
  135. package/esm/Enums/Modes/ResponsiveMode.js +5 -1
  136. package/esm/Enums/Modes/ThemeMode.js +6 -1
  137. package/esm/Enums/Types/AlterType.js +5 -1
  138. package/esm/Enums/Types/DestroyType.js +6 -1
  139. package/esm/Enums/Types/DivType.js +5 -1
  140. package/esm/Enums/Types/EasingType.js +30 -1
  141. package/esm/Enums/Types/EventType.js +15 -1
  142. package/esm/Enums/Types/GradientType.js +6 -1
  143. package/esm/Enums/Types/InteractorType.js +5 -1
  144. package/esm/Enums/Types/ParticleOutType.js +6 -1
  145. package/esm/Enums/Types/StartValueType.js +6 -1
  146. package/esm/Options/Classes/AnimationOptions.js +4 -2
  147. package/esm/Options/Classes/Interactivity/Events/DivEvent.js +2 -1
  148. package/esm/Options/Classes/Interactivity/Events/Events.js +1 -1
  149. package/esm/Options/Classes/Interactivity/Interactivity.js +2 -1
  150. package/esm/Options/Classes/ManualParticle.js +2 -1
  151. package/esm/Options/Classes/Options.js +14 -12
  152. package/esm/Options/Classes/Particles/Collisions/Collisions.js +2 -1
  153. package/esm/Options/Classes/Particles/Move/Move.js +2 -1
  154. package/esm/Options/Classes/Particles/Move/MoveCenter.js +2 -1
  155. package/esm/Options/Classes/Particles/Move/OutModes.js +2 -1
  156. package/esm/Options/Classes/Particles/Number/ParticlesNumberLimit.js +2 -1
  157. package/esm/Options/Classes/Particles/Opacity/OpacityAnimation.js +2 -1
  158. package/esm/Options/Classes/Particles/ParticlesOptions.js +1 -1
  159. package/esm/Options/Classes/Particles/Size/SizeAnimation.js +2 -1
  160. package/esm/Options/Classes/Responsive.js +5 -4
  161. package/esm/Options/Classes/Theme/ThemeDefault.js +2 -1
  162. package/esm/Types/RangeType.js +5 -1
  163. package/esm/Utils/CanvasUtils.js +27 -21
  164. package/esm/Utils/ColorUtils.js +17 -9
  165. package/esm/Utils/EventDispatcher.js +1 -1
  166. package/esm/Utils/HslColorManager.js +11 -4
  167. package/esm/Utils/NumberUtils.js +11 -10
  168. package/esm/Utils/RgbColorManager.js +11 -4
  169. package/esm/Utils/Utils.js +37 -31
  170. package/package.json +1 -1
  171. package/report.html +1 -1
  172. package/tsparticles.engine.js +327 -225
  173. package/tsparticles.engine.min.js +1 -1
  174. package/tsparticles.engine.min.js.LICENSE.txt +1 -1
  175. package/types/Core/Canvas.d.ts +4 -4
  176. package/types/Core/Container.d.ts +4 -2
  177. package/types/Core/Engine.d.ts +6 -5
  178. package/types/Core/Interfaces/IContainerPlugin.d.ts +4 -4
  179. package/types/Core/Interfaces/IEffectDrawer.d.ts +3 -3
  180. package/types/Core/Interfaces/IExternalInteractor.d.ts +1 -1
  181. package/types/Core/Interfaces/IMovePathGenerator.d.ts +2 -2
  182. package/types/Core/Interfaces/IParticleMover.d.ts +2 -2
  183. package/types/Core/Interfaces/IParticleUpdater.d.ts +2 -2
  184. package/types/Core/Interfaces/IParticlesInteractor.d.ts +1 -1
  185. package/types/Core/Interfaces/IPlugin.d.ts +3 -4
  186. package/types/Core/Interfaces/IShapeDrawer.d.ts +5 -4
  187. package/types/Core/Particle.d.ts +3 -2
  188. package/types/Core/Particles.d.ts +7 -7
  189. package/types/Core/Utils/ExternalInteractorBase.d.ts +1 -1
  190. package/types/Core/Utils/InteractionManager.d.ts +2 -2
  191. package/types/Core/Utils/ParticlesInteractorBase.d.ts +1 -1
  192. package/types/Enums/AnimationStatus.d.ts +1 -1
  193. package/types/Enums/Directions/MoveDirection.d.ts +1 -1
  194. package/types/Enums/Directions/OutModeDirection.d.ts +1 -1
  195. package/types/Enums/Directions/RotateDirection.d.ts +1 -1
  196. package/types/Enums/InteractivityDetect.d.ts +1 -1
  197. package/types/Enums/Modes/AnimationMode.d.ts +1 -1
  198. package/types/Enums/Modes/CollisionMode.d.ts +1 -1
  199. package/types/Enums/Modes/LimitMode.d.ts +1 -1
  200. package/types/Enums/Modes/OutMode.d.ts +1 -1
  201. package/types/Enums/Modes/PixelMode.d.ts +1 -1
  202. package/types/Enums/Modes/ResponsiveMode.d.ts +1 -1
  203. package/types/Enums/Modes/ThemeMode.d.ts +1 -1
  204. package/types/Enums/Types/AlterType.d.ts +1 -1
  205. package/types/Enums/Types/DestroyType.d.ts +1 -1
  206. package/types/Enums/Types/DivType.d.ts +1 -1
  207. package/types/Enums/Types/EasingType.d.ts +1 -1
  208. package/types/Enums/Types/EventType.d.ts +1 -1
  209. package/types/Enums/Types/GradientType.d.ts +1 -1
  210. package/types/Enums/Types/InteractorType.d.ts +1 -1
  211. package/types/Enums/Types/ParticleOutType.d.ts +1 -1
  212. package/types/Enums/Types/StartValueType.d.ts +1 -1
  213. package/types/Options/Classes/Options.d.ts +2 -1
  214. package/types/Options/Classes/Responsive.d.ts +2 -2
  215. package/types/Options/Classes/Theme/Theme.d.ts +2 -2
  216. package/types/Options/Interfaces/IResponsive.d.ts +2 -3
  217. package/types/Options/Interfaces/Theme/ITheme.d.ts +2 -3
  218. package/types/Types/RangeType.d.ts +1 -1
  219. package/types/Utils/CanvasUtils.d.ts +6 -6
  220. package/umd/Core/Canvas.js +34 -29
  221. package/umd/Core/Container.js +61 -48
  222. package/umd/Core/Engine.js +83 -99
  223. package/umd/Core/Particle.js +41 -27
  224. package/umd/Core/Particles.js +53 -78
  225. package/umd/Core/Utils/EventListeners.js +19 -18
  226. package/umd/Core/Utils/ExternalInteractorBase.js +3 -2
  227. package/umd/Core/Utils/InteractionManager.js +8 -7
  228. package/umd/Core/Utils/ParticlesInteractorBase.js +3 -2
  229. package/umd/Core/Utils/QuadTree.js +1 -1
  230. package/umd/Core/Utils/Ranges.js +6 -5
  231. package/umd/Enums/AnimationStatus.js +6 -0
  232. package/umd/Enums/Directions/MoveDirection.js +15 -0
  233. package/umd/Enums/Directions/OutModeDirection.js +8 -0
  234. package/umd/Enums/Directions/RotateDirection.js +7 -0
  235. package/umd/Enums/InteractivityDetect.js +7 -0
  236. package/umd/Enums/Modes/AnimationMode.js +8 -0
  237. package/umd/Enums/Modes/CollisionMode.js +7 -0
  238. package/umd/Enums/Modes/LimitMode.js +6 -0
  239. package/umd/Enums/Modes/OutMode.js +9 -0
  240. package/umd/Enums/Modes/PixelMode.js +6 -0
  241. package/umd/Enums/Modes/ResponsiveMode.js +6 -0
  242. package/umd/Enums/Modes/ThemeMode.js +7 -0
  243. package/umd/Enums/Types/AlterType.js +6 -0
  244. package/umd/Enums/Types/DestroyType.js +7 -0
  245. package/umd/Enums/Types/DivType.js +6 -0
  246. package/umd/Enums/Types/EasingType.js +31 -0
  247. package/umd/Enums/Types/EventType.js +16 -0
  248. package/umd/Enums/Types/GradientType.js +7 -0
  249. package/umd/Enums/Types/InteractorType.js +6 -0
  250. package/umd/Enums/Types/ParticleOutType.js +7 -0
  251. package/umd/Enums/Types/StartValueType.js +7 -0
  252. package/umd/Options/Classes/AnimationOptions.js +5 -3
  253. package/umd/Options/Classes/Interactivity/Events/DivEvent.js +3 -2
  254. package/umd/Options/Classes/Interactivity/Events/Events.js +1 -1
  255. package/umd/Options/Classes/Interactivity/Interactivity.js +3 -2
  256. package/umd/Options/Classes/ManualParticle.js +3 -2
  257. package/umd/Options/Classes/Options.js +15 -13
  258. package/umd/Options/Classes/Particles/Collisions/Collisions.js +3 -2
  259. package/umd/Options/Classes/Particles/Move/Move.js +3 -2
  260. package/umd/Options/Classes/Particles/Move/MoveCenter.js +3 -2
  261. package/umd/Options/Classes/Particles/Move/OutModes.js +3 -2
  262. package/umd/Options/Classes/Particles/Number/ParticlesNumberLimit.js +3 -2
  263. package/umd/Options/Classes/Particles/Opacity/OpacityAnimation.js +3 -2
  264. package/umd/Options/Classes/Particles/ParticlesOptions.js +1 -1
  265. package/umd/Options/Classes/Particles/Size/SizeAnimation.js +3 -2
  266. package/umd/Options/Classes/Responsive.js +6 -5
  267. package/umd/Options/Classes/Theme/ThemeDefault.js +3 -2
  268. package/umd/Types/RangeType.js +6 -0
  269. package/umd/Utils/CanvasUtils.js +28 -22
  270. package/umd/Utils/ColorUtils.js +18 -10
  271. package/umd/Utils/EventDispatcher.js +1 -1
  272. package/umd/Utils/HslColorManager.js +11 -4
  273. package/umd/Utils/NumberUtils.js +12 -11
  274. package/umd/Utils/RgbColorManager.js +11 -4
  275. package/umd/Utils/Utils.js +38 -32
  276. package/373.min.js +0 -2
  277. package/373.min.js.LICENSE.txt +0 -1
  278. package/438.min.js +0 -2
  279. package/438.min.js.LICENSE.txt +0 -1
  280. package/dist_browser_Core_Container_js.js +0 -92
  281. package/dist_browser_Core_Particle_js.js +0 -32
@@ -1,11 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.SizeAnimation = void 0;
4
+ const DestroyType_js_1 = require("../../../../Enums/Types/DestroyType.js");
4
5
  const AnimationOptions_js_1 = require("../../AnimationOptions.js");
5
6
  class SizeAnimation extends AnimationOptions_js_1.RangedAnimationOptions {
6
7
  constructor() {
7
8
  super();
8
- this.destroy = "none";
9
+ this.destroy = DestroyType_js_1.DestroyType.none;
9
10
  this.speed = 5;
10
11
  }
11
12
  load(data) {
@@ -1,12 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Responsive = void 0;
4
+ const ResponsiveMode_js_1 = require("../../Enums/Modes/ResponsiveMode.js");
4
5
  const Utils_js_1 = require("../../Utils/Utils.js");
5
6
  class Responsive {
6
7
  constructor() {
7
8
  this.maxWidth = Infinity;
8
9
  this.options = {};
9
- this.mode = "canvas";
10
+ this.mode = ResponsiveMode_js_1.ResponsiveMode.canvas;
10
11
  }
11
12
  load(data) {
12
13
  if (!data) {
@@ -16,11 +17,11 @@ class Responsive {
16
17
  this.maxWidth = data.maxWidth;
17
18
  }
18
19
  if (data.mode !== undefined) {
19
- if (data.mode === "screen") {
20
- this.mode = "screen";
20
+ if (data.mode === ResponsiveMode_js_1.ResponsiveMode.screen) {
21
+ this.mode = ResponsiveMode_js_1.ResponsiveMode.screen;
21
22
  }
22
23
  else {
23
- this.mode = "canvas";
24
+ this.mode = ResponsiveMode_js_1.ResponsiveMode.canvas;
24
25
  }
25
26
  }
26
27
  if (data.options !== undefined) {
@@ -1,10 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ThemeDefault = void 0;
4
+ const ThemeMode_js_1 = require("../../../Enums/Modes/ThemeMode.js");
4
5
  class ThemeDefault {
5
6
  constructor() {
6
7
  this.auto = false;
7
- this.mode = "any";
8
+ this.mode = ThemeMode_js_1.ThemeMode.any;
8
9
  this.value = false;
9
10
  }
10
11
  load(data) {
@@ -1,2 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RangeType = void 0;
4
+ var RangeType;
5
+ (function (RangeType) {
6
+ RangeType["circle"] = "circle";
7
+ RangeType["rectangle"] = "rectangle";
8
+ })(RangeType || (exports.RangeType = RangeType = {}));
@@ -1,8 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.alterHsl = exports.drawParticlePlugin = exports.drawPlugin = exports.drawShapeAfterDraw = exports.drawShape = exports.drawEffect = exports.drawParticle = exports.clear = exports.paintImage = exports.paintBase = exports.drawLine = void 0;
4
+ const AlterType_js_1 = require("../Enums/Types/AlterType.js");
4
5
  const ColorUtils_js_1 = require("./ColorUtils.js");
5
- const origin = { x: 0, y: 0 };
6
+ const origin = { x: 0, y: 0 }, defaultTransform = {
7
+ a: 1,
8
+ b: 0,
9
+ c: 0,
10
+ d: 1,
11
+ };
6
12
  function drawLine(context, begin, end) {
7
13
  context.beginPath();
8
14
  context.moveTo(begin.x, begin.y);
@@ -28,15 +34,15 @@ function clear(context, dimension) {
28
34
  context.clearRect(origin.x, origin.y, dimension.width, dimension.height);
29
35
  }
30
36
  exports.clear = clear;
31
- async function drawParticle(data) {
37
+ function drawParticle(data) {
32
38
  const { container, context, particle, delta, colorStyles, backgroundMask, composite, radius, opacity, shadow, transform, } = data, pos = particle.getPosition(), defaultAngle = 0, angle = particle.rotation + (particle.pathRotation ? particle.velocity.angle : defaultAngle), rotateData = {
33
39
  sin: Math.sin(angle),
34
40
  cos: Math.cos(angle),
35
- }, defaultTransformFactor = 1, transformData = {
36
- a: rotateData.cos * (transform.a ?? defaultTransformFactor),
37
- b: rotateData.sin * (transform.b ?? defaultTransformFactor),
38
- c: -rotateData.sin * (transform.c ?? defaultTransformFactor),
39
- d: rotateData.cos * (transform.d ?? defaultTransformFactor),
41
+ }, rotating = !!angle, identity = 1, transformData = {
42
+ a: rotateData.cos * (transform.a ?? defaultTransform.a),
43
+ b: rotating ? rotateData.sin * (transform.b ?? identity) : transform.b ?? defaultTransform.b,
44
+ c: rotating ? -rotateData.sin * (transform.c ?? identity) : transform.c ?? defaultTransform.c,
45
+ d: rotateData.cos * (transform.d ?? defaultTransform.d),
40
46
  };
41
47
  context.setTransform(transformData.a, transformData.b, transformData.c, transformData.d, pos.x, pos.y);
42
48
  if (backgroundMask) {
@@ -67,14 +73,14 @@ async function drawParticle(data) {
67
73
  transformData,
68
74
  strokeWidth,
69
75
  };
70
- await drawShape(drawData);
71
- await drawShapeAfterDraw(drawData);
72
- await drawEffect(drawData);
76
+ drawShape(drawData);
77
+ drawShapeAfterDraw(drawData);
78
+ drawEffect(drawData);
73
79
  context.globalCompositeOperation = "source-over";
74
80
  context.resetTransform();
75
81
  }
76
82
  exports.drawParticle = drawParticle;
77
- async function drawEffect(data) {
83
+ function drawEffect(data) {
78
84
  const { container, context, particle, radius, opacity, delta, transformData } = data;
79
85
  if (!particle.effect) {
80
86
  return;
@@ -83,7 +89,7 @@ async function drawEffect(data) {
83
89
  if (!drawer) {
84
90
  return;
85
91
  }
86
- await drawer.draw({
92
+ drawer.draw({
87
93
  context,
88
94
  particle,
89
95
  radius,
@@ -94,7 +100,7 @@ async function drawEffect(data) {
94
100
  });
95
101
  }
96
102
  exports.drawEffect = drawEffect;
97
- async function drawShape(data) {
103
+ function drawShape(data) {
98
104
  const { container, context, particle, radius, opacity, delta, strokeWidth, transformData } = data, minStrokeWidth = 0;
99
105
  if (!particle.shape) {
100
106
  return;
@@ -104,7 +110,7 @@ async function drawShape(data) {
104
110
  return;
105
111
  }
106
112
  context.beginPath();
107
- await drawer.draw({
113
+ drawer.draw({
108
114
  context,
109
115
  particle,
110
116
  radius,
@@ -124,7 +130,7 @@ async function drawShape(data) {
124
130
  }
125
131
  }
126
132
  exports.drawShape = drawShape;
127
- async function drawShapeAfterDraw(data) {
133
+ function drawShapeAfterDraw(data) {
128
134
  const { container, context, particle, radius, opacity, delta, transformData } = data;
129
135
  if (!particle.shape) {
130
136
  return;
@@ -133,7 +139,7 @@ async function drawShapeAfterDraw(data) {
133
139
  if (!drawer?.afterDraw) {
134
140
  return;
135
141
  }
136
- await drawer.afterDraw({
142
+ drawer.afterDraw({
137
143
  context,
138
144
  particle,
139
145
  radius,
@@ -144,18 +150,18 @@ async function drawShapeAfterDraw(data) {
144
150
  });
145
151
  }
146
152
  exports.drawShapeAfterDraw = drawShapeAfterDraw;
147
- async function drawPlugin(context, plugin, delta) {
153
+ function drawPlugin(context, plugin, delta) {
148
154
  if (!plugin.draw) {
149
155
  return;
150
156
  }
151
- await plugin.draw(context, delta);
157
+ plugin.draw(context, delta);
152
158
  }
153
159
  exports.drawPlugin = drawPlugin;
154
- async function drawParticlePlugin(context, plugin, particle, delta) {
160
+ function drawParticlePlugin(context, plugin, particle, delta) {
155
161
  if (!plugin.drawParticle) {
156
162
  return;
157
163
  }
158
- await plugin.drawParticle(context, particle, delta);
164
+ plugin.drawParticle(context, particle, delta);
159
165
  }
160
166
  exports.drawParticlePlugin = drawParticlePlugin;
161
167
  function alterHsl(color, type, value) {
@@ -163,7 +169,7 @@ function alterHsl(color, type, value) {
163
169
  return {
164
170
  h: color.h,
165
171
  s: color.s,
166
- l: color.l + (type === "darken" ? -lFactor : lFactor) * value,
172
+ l: color.l + (type === AlterType_js_1.AlterType.darken ? -lFactor : lFactor) * value,
167
173
  };
168
174
  }
169
175
  exports.alterHsl = alterHsl;
@@ -4,7 +4,15 @@ exports.updateColor = exports.updateColorValue = exports.getHslAnimationFromHsl
4
4
  const NumberUtils_js_1 = require("./NumberUtils.js");
5
5
  const TypeUtils_js_1 = require("./TypeUtils.js");
6
6
  const Constants_js_1 = require("../Core/Utils/Constants.js");
7
+ const AnimationStatus_js_1 = require("../Enums/AnimationStatus.js");
7
8
  const Utils_js_1 = require("./Utils.js");
9
+ var RgbIndexes;
10
+ (function (RgbIndexes) {
11
+ RgbIndexes[RgbIndexes["r"] = 1] = "r";
12
+ RgbIndexes[RgbIndexes["g"] = 2] = "g";
13
+ RgbIndexes[RgbIndexes["b"] = 3] = "b";
14
+ RgbIndexes[RgbIndexes["a"] = 4] = "a";
15
+ })(RgbIndexes || (RgbIndexes = {}));
8
16
  const randomColorValue = "random", midColorValue = "mid", colorManagers = new Map();
9
17
  function addColorManager(manager) {
10
18
  colorManagers.set(manager.key, manager);
@@ -21,12 +29,12 @@ function stringToRgba(input) {
21
29
  }), regex = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})?$/i, result = regex.exec(hexFixed), radix = 16, defaultAlpha = 1, alphaFactor = 0xff;
22
30
  return result
23
31
  ? {
24
- a: result[4] !== undefined
25
- ? parseInt(result[4], radix) / alphaFactor
32
+ a: result[RgbIndexes.a] !== undefined
33
+ ? parseInt(result[RgbIndexes.a], radix) / alphaFactor
26
34
  : defaultAlpha,
27
- b: parseInt(result[3], radix),
28
- g: parseInt(result[2], radix),
29
- r: parseInt(result[1], radix),
35
+ b: parseInt(result[RgbIndexes.b], radix),
36
+ g: parseInt(result[RgbIndexes.g], radix),
37
+ r: parseInt(result[RgbIndexes.r], radix),
30
38
  }
31
39
  : undefined;
32
40
  }
@@ -273,7 +281,7 @@ function setColorAnimation(colorValue, colorAnimation, reduceFactor) {
273
281
  if (colorValue.enable) {
274
282
  colorValue.velocity = ((0, NumberUtils_js_1.getRangeValue)(colorAnimation.speed) / Constants_js_1.percentDenominator) * reduceFactor;
275
283
  colorValue.decay = decayOffset - (0, NumberUtils_js_1.getRangeValue)(colorAnimation.decay);
276
- colorValue.status = "increasing";
284
+ colorValue.status = AnimationStatus_js_1.AnimationStatus.increasing;
277
285
  colorValue.loops = defaultLoops;
278
286
  colorValue.maxLoops = (0, NumberUtils_js_1.getRangeValue)(colorAnimation.count);
279
287
  colorValue.time = defaultTime;
@@ -306,7 +314,7 @@ function updateColorValue(data, range, decrease, delta) {
306
314
  return;
307
315
  }
308
316
  const offset = data.offset ? (0, NumberUtils_js_1.randomInRange)(data.offset) : minOffset, velocity = (data.velocity ?? minVelocity) * delta.factor + offset * velocityFactor, decay = data.decay ?? identity, max = (0, NumberUtils_js_1.getRangeMax)(range), min = (0, NumberUtils_js_1.getRangeMin)(range);
309
- if (!decrease || data.status === "increasing") {
317
+ if (!decrease || data.status === AnimationStatus_js_1.AnimationStatus.increasing) {
310
318
  data.value += velocity;
311
319
  if (data.value > max) {
312
320
  if (!data.loops) {
@@ -314,7 +322,7 @@ function updateColorValue(data, range, decrease, delta) {
314
322
  }
315
323
  data.loops++;
316
324
  if (decrease) {
317
- data.status = "decreasing";
325
+ data.status = AnimationStatus_js_1.AnimationStatus.decreasing;
318
326
  }
319
327
  else {
320
328
  data.value -= max;
@@ -329,7 +337,7 @@ function updateColorValue(data, range, decrease, delta) {
329
337
  data.loops = 0;
330
338
  }
331
339
  data.loops++;
332
- data.status = "increasing";
340
+ data.status = AnimationStatus_js_1.AnimationStatus.increasing;
333
341
  }
334
342
  }
335
343
  if (data.velocity && decay !== identity) {
@@ -16,7 +16,7 @@ class EventDispatcher {
16
16
  }
17
17
  dispatchEvent(type, args) {
18
18
  const listeners = this._listeners.get(type);
19
- listeners?.forEach((handler) => handler(args));
19
+ listeners?.forEach(handler => handler(args));
20
20
  }
21
21
  hasEventListener(type) {
22
22
  return !!this._listeners.get(type);
@@ -3,6 +3,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.HslColorManager = void 0;
4
4
  const NumberUtils_js_1 = require("./NumberUtils.js");
5
5
  const ColorUtils_js_1 = require("./ColorUtils.js");
6
+ var HslIndexes;
7
+ (function (HslIndexes) {
8
+ HslIndexes[HslIndexes["h"] = 1] = "h";
9
+ HslIndexes[HslIndexes["s"] = 2] = "s";
10
+ HslIndexes[HslIndexes["l"] = 3] = "l";
11
+ HslIndexes[HslIndexes["a"] = 5] = "a";
12
+ })(HslIndexes || (HslIndexes = {}));
6
13
  class HslColorManager {
7
14
  constructor() {
8
15
  this.key = "hsl";
@@ -31,10 +38,10 @@ class HslColorManager {
31
38
  const regex = /hsla?\(\s*(\d+)\s*,\s*(\d+)%\s*,\s*(\d+)%\s*(,\s*([\d.%]+)\s*)?\)/i, result = regex.exec(input), minLength = 4, defaultAlpha = 1, radix = 10;
32
39
  return result
33
40
  ? (0, ColorUtils_js_1.hslaToRgba)({
34
- a: result.length > minLength ? (0, NumberUtils_js_1.parseAlpha)(result[5]) : defaultAlpha,
35
- h: parseInt(result[1], radix),
36
- l: parseInt(result[3], radix),
37
- s: parseInt(result[2], radix),
41
+ a: result.length > minLength ? (0, NumberUtils_js_1.parseAlpha)(result[HslIndexes.a]) : defaultAlpha,
42
+ h: parseInt(result[HslIndexes.h], radix),
43
+ l: parseInt(result[HslIndexes.l], radix),
44
+ s: parseInt(result[HslIndexes.s], radix),
38
45
  })
39
46
  : undefined;
40
47
  }
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.parseAlpha = exports.calcExactPositionOrRandomFromSizeRanged = exports.calcExactPositionOrRandomFromSize = exports.calcPositionOrRandomFromSizeRanged = exports.calcPositionOrRandomFromSize = exports.calcPositionFromSize = exports.collisionVelocity = exports.getParticleBaseVelocity = exports.getParticleDirectionAngle = exports.degToRad = exports.getDistance = exports.getDistances = exports.setRangeValue = exports.getRangeMax = exports.getRangeMin = exports.getRangeValue = exports.randomInRange = exports.mix = exports.clamp = exports.getRandom = exports.setRandom = exports.getEasing = exports.addEasing = void 0;
4
+ const MoveDirection_js_1 = require("../Enums/Directions/MoveDirection.js");
4
5
  const Vectors_js_1 = require("../Core/Utils/Vectors.js");
5
6
  const TypeUtils_js_1 = require("./TypeUtils.js");
6
7
  const Constants_js_1 = require("../Core/Utils/Constants.js");
@@ -88,25 +89,25 @@ function getParticleDirectionAngle(direction, position, center) {
88
89
  }
89
90
  const empty = 0, half = 0.5, quarter = 0.25, threeQuarter = half + quarter;
90
91
  switch (direction) {
91
- case "top":
92
+ case MoveDirection_js_1.MoveDirection.top:
92
93
  return -Math.PI * half;
93
- case "top-right":
94
+ case MoveDirection_js_1.MoveDirection.topRight:
94
95
  return -Math.PI * quarter;
95
- case "right":
96
+ case MoveDirection_js_1.MoveDirection.right:
96
97
  return empty;
97
- case "bottom-right":
98
+ case MoveDirection_js_1.MoveDirection.bottomRight:
98
99
  return Math.PI * quarter;
99
- case "bottom":
100
+ case MoveDirection_js_1.MoveDirection.bottom:
100
101
  return Math.PI * half;
101
- case "bottom-left":
102
+ case MoveDirection_js_1.MoveDirection.bottomLeft:
102
103
  return Math.PI * threeQuarter;
103
- case "left":
104
+ case MoveDirection_js_1.MoveDirection.left:
104
105
  return Math.PI;
105
- case "top-left":
106
+ case MoveDirection_js_1.MoveDirection.topLeft:
106
107
  return -Math.PI * threeQuarter;
107
- case "inside":
108
+ case MoveDirection_js_1.MoveDirection.inside:
108
109
  return Math.atan2(center.y - position.y, center.x - position.x);
109
- case "outside":
110
+ case MoveDirection_js_1.MoveDirection.outside:
110
111
  return Math.atan2(position.y - center.y, position.x - center.x);
111
112
  default:
112
113
  return getRandom() * doublePI;
@@ -2,6 +2,13 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.RgbColorManager = void 0;
4
4
  const NumberUtils_js_1 = require("./NumberUtils.js");
5
+ var RgbIndexes;
6
+ (function (RgbIndexes) {
7
+ RgbIndexes[RgbIndexes["r"] = 1] = "r";
8
+ RgbIndexes[RgbIndexes["g"] = 2] = "g";
9
+ RgbIndexes[RgbIndexes["b"] = 3] = "b";
10
+ RgbIndexes[RgbIndexes["a"] = 5] = "a";
11
+ })(RgbIndexes || (RgbIndexes = {}));
5
12
  class RgbColorManager {
6
13
  constructor() {
7
14
  this.key = "rgb";
@@ -30,10 +37,10 @@ class RgbColorManager {
30
37
  const regex = /rgba?\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(,\s*([\d.%]+)\s*)?\)/i, result = regex.exec(input), radix = 10, minLength = 4, defaultAlpha = 1;
31
38
  return result
32
39
  ? {
33
- a: result.length > minLength ? (0, NumberUtils_js_1.parseAlpha)(result[5]) : defaultAlpha,
34
- b: parseInt(result[3], radix),
35
- g: parseInt(result[2], radix),
36
- r: parseInt(result[1], radix),
40
+ a: result.length > minLength ? (0, NumberUtils_js_1.parseAlpha)(result[RgbIndexes.a]) : defaultAlpha,
41
+ b: parseInt(result[RgbIndexes.b], radix),
42
+ g: parseInt(result[RgbIndexes.g], radix),
43
+ r: parseInt(result[RgbIndexes.r], radix),
37
44
  }
38
45
  : undefined;
39
46
  }
@@ -4,6 +4,12 @@ exports.updateAnimation = exports.getSize = exports.getPosition = exports.initPa
4
4
  const NumberUtils_js_1 = require("./NumberUtils.js");
5
5
  const Constants_js_1 = require("../Core/Utils/Constants.js");
6
6
  const TypeUtils_js_1 = require("./TypeUtils.js");
7
+ const AnimationMode_js_1 = require("../Enums/Modes/AnimationMode.js");
8
+ const AnimationStatus_js_1 = require("../Enums/AnimationStatus.js");
9
+ const DestroyType_js_1 = require("../Enums/Types/DestroyType.js");
10
+ const OutModeDirection_js_1 = require("../Enums/Directions/OutModeDirection.js");
11
+ const PixelMode_js_1 = require("../Enums/Modes/PixelMode.js");
12
+ const StartValueType_js_1 = require("../Enums/Types/StartValueType.js");
7
13
  const Vectors_js_1 = require("../Core/Utils/Vectors.js");
8
14
  const _logger = {
9
15
  debug: console.debug,
@@ -42,10 +48,10 @@ function rectSideBounce(data) {
42
48
  return res;
43
49
  }
44
50
  function checkSelector(element, selectors) {
45
- const res = executeOnSingleOrMultiple(selectors, (selector) => {
51
+ const res = executeOnSingleOrMultiple(selectors, selector => {
46
52
  return element.matches(selector);
47
53
  });
48
- return (0, TypeUtils_js_1.isArray)(res) ? res.some((t) => t) : res;
54
+ return (0, TypeUtils_js_1.isArray)(res) ? res.some(t => t) : res;
49
55
  }
50
56
  function isSsr() {
51
57
  return typeof window === "undefined" || !window || typeof window.document === "undefined" || !window.document;
@@ -104,16 +110,16 @@ function isPointInside(point, size, offset, radius, direction) {
104
110
  exports.isPointInside = isPointInside;
105
111
  function areBoundsInside(bounds, size, offset, direction) {
106
112
  let inside = true;
107
- if (!direction || direction === "bottom") {
113
+ if (!direction || direction === OutModeDirection_js_1.OutModeDirection.bottom) {
108
114
  inside = bounds.top < size.height + offset.x;
109
115
  }
110
- if (inside && (!direction || direction === "left")) {
116
+ if (inside && (!direction || direction === OutModeDirection_js_1.OutModeDirection.left)) {
111
117
  inside = bounds.right > offset.x;
112
118
  }
113
- if (inside && (!direction || direction === "right")) {
119
+ if (inside && (!direction || direction === OutModeDirection_js_1.OutModeDirection.right)) {
114
120
  inside = bounds.left < size.width + offset.y;
115
121
  }
116
- if (inside && (!direction || direction === "top")) {
122
+ if (inside && (!direction || direction === OutModeDirection_js_1.OutModeDirection.top)) {
117
123
  inside = bounds.bottom > offset.y;
118
124
  }
119
125
  return inside;
@@ -151,7 +157,7 @@ function deepExtend(destination, ...sources) {
151
157
  const sourceDict = source, value = sourceDict[key], destDict = destination;
152
158
  destDict[key] =
153
159
  (0, TypeUtils_js_1.isObject)(value) && Array.isArray(value)
154
- ? value.map((v) => deepExtend(destDict[key], v))
160
+ ? value.map(v => deepExtend(destDict[key], v))
155
161
  : deepExtend(destDict[key], value);
156
162
  }
157
163
  }
@@ -159,11 +165,11 @@ function deepExtend(destination, ...sources) {
159
165
  }
160
166
  exports.deepExtend = deepExtend;
161
167
  function isDivModeEnabled(mode, divs) {
162
- return !!findItemFromSingleOrMultiple(divs, (t) => t.enable && isInArray(mode, t.mode));
168
+ return !!findItemFromSingleOrMultiple(divs, t => t.enable && isInArray(mode, t.mode));
163
169
  }
164
170
  exports.isDivModeEnabled = isDivModeEnabled;
165
171
  function divModeExecute(mode, divs, callback) {
166
- executeOnSingleOrMultiple(divs, (div) => {
172
+ executeOnSingleOrMultiple(divs, div => {
167
173
  const divMode = div.mode, divEnabled = div.enable;
168
174
  if (divEnabled && isInArray(mode, divMode)) {
169
175
  singleDivModeExecute(div, callback);
@@ -173,7 +179,7 @@ function divModeExecute(mode, divs, callback) {
173
179
  exports.divModeExecute = divModeExecute;
174
180
  function singleDivModeExecute(div, callback) {
175
181
  const selectors = div.selectors;
176
- executeOnSingleOrMultiple(selectors, (selector) => {
182
+ executeOnSingleOrMultiple(selectors, selector => {
177
183
  callback(selector, div);
178
184
  });
179
185
  }
@@ -182,7 +188,7 @@ function divMode(divs, element) {
182
188
  if (!element || !divs) {
183
189
  return;
184
190
  }
185
- return findItemFromSingleOrMultiple(divs, (div) => {
191
+ return findItemFromSingleOrMultiple(divs, div => {
186
192
  return checkSelector(element, div.selectors);
187
193
  });
188
194
  }
@@ -299,35 +305,35 @@ function initParticleNumericAnimationValue(options, pxRatio) {
299
305
  if (animationOptions.enable) {
300
306
  res.decay = decayOffset - (0, NumberUtils_js_1.getRangeValue)(animationOptions.decay);
301
307
  switch (animationOptions.mode) {
302
- case "increase":
303
- res.status = "increasing";
308
+ case AnimationMode_js_1.AnimationMode.increase:
309
+ res.status = AnimationStatus_js_1.AnimationStatus.increasing;
304
310
  break;
305
- case "decrease":
306
- res.status = "decreasing";
311
+ case AnimationMode_js_1.AnimationMode.decrease:
312
+ res.status = AnimationStatus_js_1.AnimationStatus.decreasing;
307
313
  break;
308
- case "random":
309
- res.status = (0, NumberUtils_js_1.getRandom)() >= Constants_js_1.halfRandom ? "increasing" : "decreasing";
314
+ case AnimationMode_js_1.AnimationMode.random:
315
+ res.status = (0, NumberUtils_js_1.getRandom)() >= Constants_js_1.halfRandom ? AnimationStatus_js_1.AnimationStatus.increasing : AnimationStatus_js_1.AnimationStatus.decreasing;
310
316
  break;
311
317
  }
312
- const autoStatus = animationOptions.mode === "auto";
318
+ const autoStatus = animationOptions.mode === AnimationMode_js_1.AnimationMode.auto;
313
319
  switch (animationOptions.startValue) {
314
- case "min":
320
+ case StartValueType_js_1.StartValueType.min:
315
321
  res.value = res.min;
316
322
  if (autoStatus) {
317
- res.status = "increasing";
323
+ res.status = AnimationStatus_js_1.AnimationStatus.increasing;
318
324
  }
319
325
  break;
320
- case "max":
326
+ case StartValueType_js_1.StartValueType.max:
321
327
  res.value = res.max;
322
328
  if (autoStatus) {
323
- res.status = "decreasing";
329
+ res.status = AnimationStatus_js_1.AnimationStatus.decreasing;
324
330
  }
325
331
  break;
326
- case "random":
332
+ case StartValueType_js_1.StartValueType.random:
327
333
  default:
328
334
  res.value = (0, NumberUtils_js_1.randomInRange)(res);
329
335
  if (autoStatus) {
330
- res.status = (0, NumberUtils_js_1.getRandom)() >= Constants_js_1.halfRandom ? "increasing" : "decreasing";
336
+ res.status = (0, NumberUtils_js_1.getRandom)() >= Constants_js_1.halfRandom ? AnimationStatus_js_1.AnimationStatus.increasing : AnimationStatus_js_1.AnimationStatus.decreasing;
331
337
  }
332
338
  break;
333
339
  }
@@ -337,7 +343,7 @@ function initParticleNumericAnimationValue(options, pxRatio) {
337
343
  }
338
344
  exports.initParticleNumericAnimationValue = initParticleNumericAnimationValue;
339
345
  function getPositionOrSize(positionOrSize, canvasSize) {
340
- const isPercent = positionOrSize.mode === "percent";
346
+ const isPercent = positionOrSize.mode === PixelMode_js_1.PixelMode.percent;
341
347
  if (!isPercent) {
342
348
  const { mode: _, ...rest } = positionOrSize;
343
349
  return rest;
@@ -366,12 +372,12 @@ function getSize(size, canvasSize) {
366
372
  exports.getSize = getSize;
367
373
  function checkDestroy(particle, destroyType, value, minValue, maxValue) {
368
374
  switch (destroyType) {
369
- case "max":
375
+ case DestroyType_js_1.DestroyType.max:
370
376
  if (value >= maxValue) {
371
377
  particle.destroy();
372
378
  }
373
379
  break;
374
- case "min":
380
+ case DestroyType_js_1.DestroyType.min:
375
381
  if (value <= minValue) {
376
382
  particle.destroy();
377
383
  }
@@ -397,10 +403,10 @@ function updateAnimation(particle, data, changeDirection, destroyType, delta) {
397
403
  return;
398
404
  }
399
405
  switch (data.status) {
400
- case "increasing":
406
+ case AnimationStatus_js_1.AnimationStatus.increasing:
401
407
  if (data.value >= maxValue) {
402
408
  if (changeDirection) {
403
- data.status = "decreasing";
409
+ data.status = AnimationStatus_js_1.AnimationStatus.decreasing;
404
410
  }
405
411
  else {
406
412
  data.value -= maxValue;
@@ -414,10 +420,10 @@ function updateAnimation(particle, data, changeDirection, destroyType, delta) {
414
420
  data.value += velocity;
415
421
  }
416
422
  break;
417
- case "decreasing":
423
+ case AnimationStatus_js_1.AnimationStatus.decreasing:
418
424
  if (data.value <= minValue) {
419
425
  if (changeDirection) {
420
- data.status = "increasing";
426
+ data.status = AnimationStatus_js_1.AnimationStatus.increasing;
421
427
  }
422
428
  else {
423
429
  data.value += maxValue;