@tsparticles/engine 3.3.0 → 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 (265) hide show
  1. package/README.md +0 -4
  2. package/browser/Core/Canvas.js +27 -22
  3. package/browser/Core/Container.js +55 -42
  4. package/browser/Core/Engine.js +82 -74
  5. package/browser/Core/Particle.js +29 -15
  6. package/browser/Core/Particles.js +23 -24
  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 +3 -2
  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 +13 -7
  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 +27 -22
  59. package/cjs/Core/Container.js +55 -42
  60. package/cjs/Core/Engine.js +82 -74
  61. package/cjs/Core/Particle.js +29 -15
  62. package/cjs/Core/Particles.js +23 -24
  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 +3 -2
  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 +13 -7
  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 +27 -22
  115. package/esm/Core/Container.js +55 -42
  116. package/esm/Core/Engine.js +82 -74
  117. package/esm/Core/Particle.js +29 -15
  118. package/esm/Core/Particles.js +23 -24
  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 +3 -2
  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 +13 -7
  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/Container.d.ts +4 -2
  176. package/types/Core/Engine.d.ts +6 -5
  177. package/types/Core/Interfaces/IPlugin.d.ts +3 -4
  178. package/types/Core/Interfaces/IShapeDrawer.d.ts +1 -0
  179. package/types/Core/Particle.d.ts +1 -0
  180. package/types/Enums/AnimationStatus.d.ts +1 -1
  181. package/types/Enums/Directions/MoveDirection.d.ts +1 -1
  182. package/types/Enums/Directions/OutModeDirection.d.ts +1 -1
  183. package/types/Enums/Directions/RotateDirection.d.ts +1 -1
  184. package/types/Enums/InteractivityDetect.d.ts +1 -1
  185. package/types/Enums/Modes/AnimationMode.d.ts +1 -1
  186. package/types/Enums/Modes/CollisionMode.d.ts +1 -1
  187. package/types/Enums/Modes/LimitMode.d.ts +1 -1
  188. package/types/Enums/Modes/OutMode.d.ts +1 -1
  189. package/types/Enums/Modes/PixelMode.d.ts +1 -1
  190. package/types/Enums/Modes/ResponsiveMode.d.ts +1 -1
  191. package/types/Enums/Modes/ThemeMode.d.ts +1 -1
  192. package/types/Enums/Types/AlterType.d.ts +1 -1
  193. package/types/Enums/Types/DestroyType.d.ts +1 -1
  194. package/types/Enums/Types/DivType.d.ts +1 -1
  195. package/types/Enums/Types/EasingType.d.ts +1 -1
  196. package/types/Enums/Types/EventType.d.ts +1 -1
  197. package/types/Enums/Types/GradientType.d.ts +1 -1
  198. package/types/Enums/Types/InteractorType.d.ts +1 -1
  199. package/types/Enums/Types/ParticleOutType.d.ts +1 -1
  200. package/types/Enums/Types/StartValueType.d.ts +1 -1
  201. package/types/Options/Classes/Options.d.ts +2 -1
  202. package/types/Options/Classes/Responsive.d.ts +2 -2
  203. package/types/Options/Classes/Theme/Theme.d.ts +2 -2
  204. package/types/Options/Interfaces/IResponsive.d.ts +2 -3
  205. package/types/Options/Interfaces/Theme/ITheme.d.ts +2 -3
  206. package/types/Types/RangeType.d.ts +1 -1
  207. package/umd/Core/Canvas.js +27 -22
  208. package/umd/Core/Container.js +56 -43
  209. package/umd/Core/Engine.js +83 -99
  210. package/umd/Core/Particle.js +30 -16
  211. package/umd/Core/Particles.js +24 -25
  212. package/umd/Core/Utils/EventListeners.js +19 -18
  213. package/umd/Core/Utils/ExternalInteractorBase.js +3 -2
  214. package/umd/Core/Utils/InteractionManager.js +4 -3
  215. package/umd/Core/Utils/ParticlesInteractorBase.js +3 -2
  216. package/umd/Core/Utils/QuadTree.js +1 -1
  217. package/umd/Core/Utils/Ranges.js +6 -5
  218. package/umd/Enums/AnimationStatus.js +6 -0
  219. package/umd/Enums/Directions/MoveDirection.js +15 -0
  220. package/umd/Enums/Directions/OutModeDirection.js +8 -0
  221. package/umd/Enums/Directions/RotateDirection.js +7 -0
  222. package/umd/Enums/InteractivityDetect.js +7 -0
  223. package/umd/Enums/Modes/AnimationMode.js +8 -0
  224. package/umd/Enums/Modes/CollisionMode.js +7 -0
  225. package/umd/Enums/Modes/LimitMode.js +6 -0
  226. package/umd/Enums/Modes/OutMode.js +9 -0
  227. package/umd/Enums/Modes/PixelMode.js +6 -0
  228. package/umd/Enums/Modes/ResponsiveMode.js +6 -0
  229. package/umd/Enums/Modes/ThemeMode.js +7 -0
  230. package/umd/Enums/Types/AlterType.js +6 -0
  231. package/umd/Enums/Types/DestroyType.js +7 -0
  232. package/umd/Enums/Types/DivType.js +6 -0
  233. package/umd/Enums/Types/EasingType.js +31 -0
  234. package/umd/Enums/Types/EventType.js +16 -0
  235. package/umd/Enums/Types/GradientType.js +7 -0
  236. package/umd/Enums/Types/InteractorType.js +6 -0
  237. package/umd/Enums/Types/ParticleOutType.js +7 -0
  238. package/umd/Enums/Types/StartValueType.js +7 -0
  239. package/umd/Options/Classes/AnimationOptions.js +5 -3
  240. package/umd/Options/Classes/Interactivity/Events/DivEvent.js +3 -2
  241. package/umd/Options/Classes/Interactivity/Events/Events.js +1 -1
  242. package/umd/Options/Classes/Interactivity/Interactivity.js +3 -2
  243. package/umd/Options/Classes/ManualParticle.js +3 -2
  244. package/umd/Options/Classes/Options.js +15 -13
  245. package/umd/Options/Classes/Particles/Collisions/Collisions.js +3 -2
  246. package/umd/Options/Classes/Particles/Move/Move.js +3 -2
  247. package/umd/Options/Classes/Particles/Move/MoveCenter.js +3 -2
  248. package/umd/Options/Classes/Particles/Move/OutModes.js +3 -2
  249. package/umd/Options/Classes/Particles/Number/ParticlesNumberLimit.js +3 -2
  250. package/umd/Options/Classes/Particles/Opacity/OpacityAnimation.js +3 -2
  251. package/umd/Options/Classes/Particles/ParticlesOptions.js +1 -1
  252. package/umd/Options/Classes/Particles/Size/SizeAnimation.js +3 -2
  253. package/umd/Options/Classes/Responsive.js +6 -5
  254. package/umd/Options/Classes/Theme/ThemeDefault.js +3 -2
  255. package/umd/Types/RangeType.js +6 -0
  256. package/umd/Utils/CanvasUtils.js +14 -8
  257. package/umd/Utils/ColorUtils.js +18 -10
  258. package/umd/Utils/EventDispatcher.js +1 -1
  259. package/umd/Utils/HslColorManager.js +11 -4
  260. package/umd/Utils/NumberUtils.js +12 -11
  261. package/umd/Utils/RgbColorManager.js +11 -4
  262. package/umd/Utils/Utils.js +38 -32
  263. package/174.min.js +0 -2
  264. package/174.min.js.LICENSE.txt +0 -1
  265. package/dist_browser_Core_Container_js.js +0 -102
@@ -4,17 +4,18 @@
4
4
  if (v !== undefined) module.exports = v;
5
5
  }
6
6
  else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports", "./Events/Events.js", "./Modes/Modes.js"], factory);
7
+ define(["require", "exports", "./Events/Events.js", "../../../Enums/InteractivityDetect.js", "./Modes/Modes.js"], factory);
8
8
  }
9
9
  })(function (require, exports) {
10
10
  "use strict";
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.Interactivity = void 0;
13
13
  const Events_js_1 = require("./Events/Events.js");
14
+ const InteractivityDetect_js_1 = require("../../../Enums/InteractivityDetect.js");
14
15
  const Modes_js_1 = require("./Modes/Modes.js");
15
16
  class Interactivity {
16
17
  constructor(engine, container) {
17
- this.detectsOn = "window";
18
+ this.detectsOn = InteractivityDetect_js_1.InteractivityDetect.window;
18
19
  this.events = new Events_js_1.Events();
19
20
  this.modes = new Modes_js_1.Modes(engine, container);
20
21
  }
@@ -4,12 +4,13 @@
4
4
  if (v !== undefined) module.exports = v;
5
5
  }
6
6
  else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports", "../../Utils/Utils.js"], factory);
7
+ define(["require", "exports", "../../Enums/Modes/PixelMode.js", "../../Utils/Utils.js"], factory);
8
8
  }
9
9
  })(function (require, exports) {
10
10
  "use strict";
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.ManualParticle = void 0;
13
+ const PixelMode_js_1 = require("../../Enums/Modes/PixelMode.js");
13
14
  const Utils_js_1 = require("../../Utils/Utils.js");
14
15
  const defaultPosition = 50;
15
16
  class ManualParticle {
@@ -21,7 +22,7 @@
21
22
  this.position = {
22
23
  x: data.position.x ?? defaultPosition,
23
24
  y: data.position.y ?? defaultPosition,
24
- mode: data.position.mode ?? "percent",
25
+ mode: data.position.mode ?? PixelMode_js_1.PixelMode.percent,
25
26
  };
26
27
  }
27
28
  if (data.options) {
@@ -4,7 +4,7 @@
4
4
  if (v !== undefined) module.exports = v;
5
5
  }
6
6
  else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports", "../../Utils/Utils.js", "./Background/Background.js", "./BackgroundMask/BackgroundMask.js", "./FullScreen/FullScreen.js", "./Interactivity/Interactivity.js", "./ManualParticle.js", "./Responsive.js", "./Theme/Theme.js", "../../Utils/TypeUtils.js", "../../Utils/OptionsUtils.js", "../../Utils/NumberUtils.js"], factory);
7
+ define(["require", "exports", "../../Utils/Utils.js", "./Background/Background.js", "./BackgroundMask/BackgroundMask.js", "./FullScreen/FullScreen.js", "./Interactivity/Interactivity.js", "./ManualParticle.js", "./Responsive.js", "../../Enums/Modes/ResponsiveMode.js", "./Theme/Theme.js", "../../Enums/Modes/ThemeMode.js", "../../Utils/TypeUtils.js", "../../Utils/OptionsUtils.js", "../../Utils/NumberUtils.js"], factory);
8
8
  }
9
9
  })(function (require, exports) {
10
10
  "use strict";
@@ -17,17 +17,19 @@
17
17
  const Interactivity_js_1 = require("./Interactivity/Interactivity.js");
18
18
  const ManualParticle_js_1 = require("./ManualParticle.js");
19
19
  const Responsive_js_1 = require("./Responsive.js");
20
+ const ResponsiveMode_js_1 = require("../../Enums/Modes/ResponsiveMode.js");
20
21
  const Theme_js_1 = require("./Theme/Theme.js");
22
+ const ThemeMode_js_1 = require("../../Enums/Modes/ThemeMode.js");
21
23
  const TypeUtils_js_1 = require("../../Utils/TypeUtils.js");
22
24
  const OptionsUtils_js_1 = require("../../Utils/OptionsUtils.js");
23
25
  const NumberUtils_js_1 = require("../../Utils/NumberUtils.js");
24
26
  class Options {
25
27
  constructor(engine, container) {
26
- this._findDefaultTheme = (mode) => {
27
- return (this.themes.find((theme) => theme.default.value && theme.default.mode === mode) ??
28
- this.themes.find((theme) => theme.default.value && theme.default.mode === "any"));
28
+ this._findDefaultTheme = mode => {
29
+ return (this.themes.find(theme => theme.default.value && theme.default.mode === mode) ??
30
+ this.themes.find(theme => theme.default.value && theme.default.mode === ThemeMode_js_1.ThemeMode.any));
29
31
  };
30
- this._importPreset = (preset) => {
32
+ this._importPreset = preset => {
31
33
  this.load(this._engine.getPreset(preset));
32
34
  };
33
35
  this._engine = engine;
@@ -58,7 +60,7 @@
58
60
  return;
59
61
  }
60
62
  if (data.preset !== undefined) {
61
- (0, Utils_js_1.executeOnSingleOrMultiple)(data.preset, (preset) => this._importPreset(preset));
63
+ (0, Utils_js_1.executeOnSingleOrMultiple)(data.preset, preset => this._importPreset(preset));
62
64
  }
63
65
  if (data.autoPlay !== undefined) {
64
66
  this.autoPlay = data.autoPlay;
@@ -106,7 +108,7 @@
106
108
  this.backgroundMask.load(data.backgroundMask);
107
109
  this.interactivity.load(data.interactivity);
108
110
  if (data.manualParticles) {
109
- this.manualParticles = data.manualParticles.map((t) => {
111
+ this.manualParticles = data.manualParticles.map(t => {
110
112
  const tmp = new ManualParticle_js_1.ManualParticle();
111
113
  tmp.load(t);
112
114
  return tmp;
@@ -136,7 +138,7 @@
136
138
  this.responsive.sort((a, b) => a.maxWidth - b.maxWidth);
137
139
  if (data.themes !== undefined) {
138
140
  for (const theme of data.themes) {
139
- const existingTheme = this.themes.find((t) => t.name === theme.name);
141
+ const existingTheme = this.themes.find(t => t.name === theme.name);
140
142
  if (!existingTheme) {
141
143
  const optTheme = new Theme_js_1.Theme();
142
144
  optTheme.load(theme);
@@ -147,24 +149,24 @@
147
149
  }
148
150
  }
149
151
  }
150
- this.defaultThemes.dark = this._findDefaultTheme("dark")?.name;
151
- this.defaultThemes.light = this._findDefaultTheme("light")?.name;
152
+ this.defaultThemes.dark = this._findDefaultTheme(ThemeMode_js_1.ThemeMode.dark)?.name;
153
+ this.defaultThemes.light = this._findDefaultTheme(ThemeMode_js_1.ThemeMode.light)?.name;
152
154
  }
153
155
  setResponsive(width, pxRatio, defaultOptions) {
154
156
  this.load(defaultOptions);
155
- const responsiveOptions = this.responsive.find((t) => t.mode === "screen" && screen ? t.maxWidth > screen.availWidth : t.maxWidth * pxRatio > width);
157
+ const responsiveOptions = this.responsive.find(t => t.mode === ResponsiveMode_js_1.ResponsiveMode.screen && screen ? t.maxWidth > screen.availWidth : t.maxWidth * pxRatio > width);
156
158
  this.load(responsiveOptions?.options);
157
159
  return responsiveOptions?.maxWidth;
158
160
  }
159
161
  setTheme(name) {
160
162
  if (name) {
161
- const chosenTheme = this.themes.find((theme) => theme.name === name);
163
+ const chosenTheme = this.themes.find(theme => theme.name === name);
162
164
  if (chosenTheme) {
163
165
  this.load(chosenTheme.options);
164
166
  }
165
167
  }
166
168
  else {
167
- const mediaMatch = (0, Utils_js_1.safeMatchMedia)("(prefers-color-scheme: dark)"), clientDarkMode = mediaMatch && mediaMatch.matches, defaultTheme = this._findDefaultTheme(clientDarkMode ? "dark" : "light");
169
+ const mediaMatch = (0, Utils_js_1.safeMatchMedia)("(prefers-color-scheme: dark)"), clientDarkMode = mediaMatch?.matches, defaultTheme = this._findDefaultTheme(clientDarkMode ? ThemeMode_js_1.ThemeMode.dark : ThemeMode_js_1.ThemeMode.light);
168
170
  if (defaultTheme) {
169
171
  this.load(defaultTheme.options);
170
172
  }
@@ -4,12 +4,13 @@
4
4
  if (v !== undefined) module.exports = v;
5
5
  }
6
6
  else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports", "./CollisionsAbsorb.js", "./CollisionsOverlap.js", "../Bounce/ParticlesBounce.js", "../../../../Utils/NumberUtils.js"], factory);
7
+ define(["require", "exports", "../../../../Enums/Modes/CollisionMode.js", "./CollisionsAbsorb.js", "./CollisionsOverlap.js", "../Bounce/ParticlesBounce.js", "../../../../Utils/NumberUtils.js"], factory);
8
8
  }
9
9
  })(function (require, exports) {
10
10
  "use strict";
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.Collisions = void 0;
13
+ const CollisionMode_js_1 = require("../../../../Enums/Modes/CollisionMode.js");
13
14
  const CollisionsAbsorb_js_1 = require("./CollisionsAbsorb.js");
14
15
  const CollisionsOverlap_js_1 = require("./CollisionsOverlap.js");
15
16
  const ParticlesBounce_js_1 = require("../Bounce/ParticlesBounce.js");
@@ -20,7 +21,7 @@
20
21
  this.bounce = new ParticlesBounce_js_1.ParticlesBounce();
21
22
  this.enable = false;
22
23
  this.maxSpeed = 50;
23
- this.mode = "bounce";
24
+ this.mode = CollisionMode_js_1.CollisionMode.bounce;
24
25
  this.overlap = new CollisionsOverlap_js_1.CollisionsOverlap();
25
26
  }
26
27
  load(data) {
@@ -4,12 +4,13 @@
4
4
  if (v !== undefined) module.exports = v;
5
5
  }
6
6
  else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports", "../../../../Utils/TypeUtils.js", "./MoveAngle.js", "./MoveAttract.js", "./MoveCenter.js", "./MoveGravity.js", "./Path/MovePath.js", "./MoveTrail.js", "./OutModes.js", "./Spin.js", "../../../../Utils/NumberUtils.js"], factory);
7
+ define(["require", "exports", "../../../../Enums/Directions/MoveDirection.js", "../../../../Utils/TypeUtils.js", "./MoveAngle.js", "./MoveAttract.js", "./MoveCenter.js", "./MoveGravity.js", "./Path/MovePath.js", "./MoveTrail.js", "./OutModes.js", "./Spin.js", "../../../../Utils/NumberUtils.js"], factory);
8
8
  }
9
9
  })(function (require, exports) {
10
10
  "use strict";
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.Move = void 0;
13
+ const MoveDirection_js_1 = require("../../../../Enums/Directions/MoveDirection.js");
13
14
  const TypeUtils_js_1 = require("../../../../Utils/TypeUtils.js");
14
15
  const MoveAngle_js_1 = require("./MoveAngle.js");
15
16
  const MoveAttract_js_1 = require("./MoveAttract.js");
@@ -27,7 +28,7 @@
27
28
  this.center = new MoveCenter_js_1.MoveCenter();
28
29
  this.decay = 0;
29
30
  this.distance = {};
30
- this.direction = "none";
31
+ this.direction = MoveDirection_js_1.MoveDirection.none;
31
32
  this.drift = 0;
32
33
  this.enable = false;
33
34
  this.gravity = new MoveGravity_js_1.MoveGravity();
@@ -4,17 +4,18 @@
4
4
  if (v !== undefined) module.exports = v;
5
5
  }
6
6
  else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports"], factory);
7
+ define(["require", "exports", "../../../../Enums/Modes/PixelMode.js"], factory);
8
8
  }
9
9
  })(function (require, exports) {
10
10
  "use strict";
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.MoveCenter = void 0;
13
+ const PixelMode_js_1 = require("../../../../Enums/Modes/PixelMode.js");
13
14
  class MoveCenter {
14
15
  constructor() {
15
16
  this.x = 50;
16
17
  this.y = 50;
17
- this.mode = "percent";
18
+ this.mode = PixelMode_js_1.PixelMode.percent;
18
19
  this.radius = 0;
19
20
  }
20
21
  load(data) {
@@ -4,15 +4,16 @@
4
4
  if (v !== undefined) module.exports = v;
5
5
  }
6
6
  else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports"], factory);
7
+ define(["require", "exports", "../../../../Enums/Modes/OutMode.js"], factory);
8
8
  }
9
9
  })(function (require, exports) {
10
10
  "use strict";
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.OutModes = void 0;
13
+ const OutMode_js_1 = require("../../../../Enums/Modes/OutMode.js");
13
14
  class OutModes {
14
15
  constructor() {
15
- this.default = "out";
16
+ this.default = OutMode_js_1.OutMode.out;
16
17
  }
17
18
  load(data) {
18
19
  if (!data) {
@@ -4,15 +4,16 @@
4
4
  if (v !== undefined) module.exports = v;
5
5
  }
6
6
  else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports"], factory);
7
+ define(["require", "exports", "../../../../Enums/Modes/LimitMode.js"], factory);
8
8
  }
9
9
  })(function (require, exports) {
10
10
  "use strict";
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.ParticlesNumberLimit = void 0;
13
+ const LimitMode_js_1 = require("../../../../Enums/Modes/LimitMode.js");
13
14
  class ParticlesNumberLimit {
14
15
  constructor() {
15
- this.mode = "delete";
16
+ this.mode = LimitMode_js_1.LimitMode.delete;
16
17
  this.value = 0;
17
18
  }
18
19
  load(data) {
@@ -4,17 +4,18 @@
4
4
  if (v !== undefined) module.exports = v;
5
5
  }
6
6
  else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports", "../../AnimationOptions.js"], factory);
7
+ define(["require", "exports", "../../../../Enums/Types/DestroyType.js", "../../AnimationOptions.js"], factory);
8
8
  }
9
9
  })(function (require, exports) {
10
10
  "use strict";
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.OpacityAnimation = void 0;
13
+ const DestroyType_js_1 = require("../../../../Enums/Types/DestroyType.js");
13
14
  const AnimationOptions_js_1 = require("../../AnimationOptions.js");
14
15
  class OpacityAnimation extends AnimationOptions_js_1.RangedAnimationOptions {
15
16
  constructor() {
16
17
  super();
17
- this.destroy = "none";
18
+ this.destroy = DestroyType_js_1.DestroyType.none;
18
19
  this.speed = 2;
19
20
  }
20
21
  load(data) {
@@ -77,7 +77,7 @@
77
77
  }
78
78
  const strokeToLoad = data.stroke;
79
79
  if (strokeToLoad) {
80
- this.stroke = (0, Utils_js_1.executeOnSingleOrMultiple)(strokeToLoad, (t) => {
80
+ this.stroke = (0, Utils_js_1.executeOnSingleOrMultiple)(strokeToLoad, t => {
81
81
  const tmp = new Stroke_js_1.Stroke();
82
82
  tmp.load(t);
83
83
  return tmp;
@@ -4,17 +4,18 @@
4
4
  if (v !== undefined) module.exports = v;
5
5
  }
6
6
  else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports", "../../AnimationOptions.js"], factory);
7
+ define(["require", "exports", "../../../../Enums/Types/DestroyType.js", "../../AnimationOptions.js"], factory);
8
8
  }
9
9
  })(function (require, exports) {
10
10
  "use strict";
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.SizeAnimation = void 0;
13
+ const DestroyType_js_1 = require("../../../../Enums/Types/DestroyType.js");
13
14
  const AnimationOptions_js_1 = require("../../AnimationOptions.js");
14
15
  class SizeAnimation extends AnimationOptions_js_1.RangedAnimationOptions {
15
16
  constructor() {
16
17
  super();
17
- this.destroy = "none";
18
+ this.destroy = DestroyType_js_1.DestroyType.none;
18
19
  this.speed = 5;
19
20
  }
20
21
  load(data) {
@@ -4,18 +4,19 @@
4
4
  if (v !== undefined) module.exports = v;
5
5
  }
6
6
  else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports", "../../Utils/Utils.js"], factory);
7
+ define(["require", "exports", "../../Enums/Modes/ResponsiveMode.js", "../../Utils/Utils.js"], factory);
8
8
  }
9
9
  })(function (require, exports) {
10
10
  "use strict";
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.Responsive = void 0;
13
+ const ResponsiveMode_js_1 = require("../../Enums/Modes/ResponsiveMode.js");
13
14
  const Utils_js_1 = require("../../Utils/Utils.js");
14
15
  class Responsive {
15
16
  constructor() {
16
17
  this.maxWidth = Infinity;
17
18
  this.options = {};
18
- this.mode = "canvas";
19
+ this.mode = ResponsiveMode_js_1.ResponsiveMode.canvas;
19
20
  }
20
21
  load(data) {
21
22
  if (!data) {
@@ -25,11 +26,11 @@
25
26
  this.maxWidth = data.maxWidth;
26
27
  }
27
28
  if (data.mode !== undefined) {
28
- if (data.mode === "screen") {
29
- this.mode = "screen";
29
+ if (data.mode === ResponsiveMode_js_1.ResponsiveMode.screen) {
30
+ this.mode = ResponsiveMode_js_1.ResponsiveMode.screen;
30
31
  }
31
32
  else {
32
- this.mode = "canvas";
33
+ this.mode = ResponsiveMode_js_1.ResponsiveMode.canvas;
33
34
  }
34
35
  }
35
36
  if (data.options !== undefined) {
@@ -4,16 +4,17 @@
4
4
  if (v !== undefined) module.exports = v;
5
5
  }
6
6
  else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports"], factory);
7
+ define(["require", "exports", "../../../Enums/Modes/ThemeMode.js"], factory);
8
8
  }
9
9
  })(function (require, exports) {
10
10
  "use strict";
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.ThemeDefault = void 0;
13
+ const ThemeMode_js_1 = require("../../../Enums/Modes/ThemeMode.js");
13
14
  class ThemeDefault {
14
15
  constructor() {
15
16
  this.auto = false;
16
- this.mode = "any";
17
+ this.mode = ThemeMode_js_1.ThemeMode.any;
17
18
  this.value = false;
18
19
  }
19
20
  load(data) {
@@ -9,4 +9,10 @@
9
9
  })(function (require, exports) {
10
10
  "use strict";
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.RangeType = void 0;
13
+ var RangeType;
14
+ (function (RangeType) {
15
+ RangeType["circle"] = "circle";
16
+ RangeType["rectangle"] = "rectangle";
17
+ })(RangeType || (exports.RangeType = RangeType = {}));
12
18
  });
@@ -4,14 +4,20 @@
4
4
  if (v !== undefined) module.exports = v;
5
5
  }
6
6
  else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports", "./ColorUtils.js"], factory);
7
+ define(["require", "exports", "../Enums/Types/AlterType.js", "./ColorUtils.js"], factory);
8
8
  }
9
9
  })(function (require, exports) {
10
10
  "use strict";
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.alterHsl = exports.drawParticlePlugin = exports.drawPlugin = exports.drawShapeAfterDraw = exports.drawShape = exports.drawEffect = exports.drawParticle = exports.clear = exports.paintImage = exports.paintBase = exports.drawLine = void 0;
13
+ const AlterType_js_1 = require("../Enums/Types/AlterType.js");
13
14
  const ColorUtils_js_1 = require("./ColorUtils.js");
14
- const origin = { x: 0, y: 0 };
15
+ const origin = { x: 0, y: 0 }, defaultTransform = {
16
+ a: 1,
17
+ b: 0,
18
+ c: 0,
19
+ d: 1,
20
+ };
15
21
  function drawLine(context, begin, end) {
16
22
  context.beginPath();
17
23
  context.moveTo(begin.x, begin.y);
@@ -41,11 +47,11 @@
41
47
  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 = {
42
48
  sin: Math.sin(angle),
43
49
  cos: Math.cos(angle),
44
- }, defaultTransformFactor = 1, transformData = {
45
- a: rotateData.cos * (transform.a ?? defaultTransformFactor),
46
- b: rotateData.sin * (transform.b ?? defaultTransformFactor),
47
- c: -rotateData.sin * (transform.c ?? defaultTransformFactor),
48
- d: rotateData.cos * (transform.d ?? defaultTransformFactor),
50
+ }, rotating = !!angle, identity = 1, transformData = {
51
+ a: rotateData.cos * (transform.a ?? defaultTransform.a),
52
+ b: rotating ? rotateData.sin * (transform.b ?? identity) : transform.b ?? defaultTransform.b,
53
+ c: rotating ? -rotateData.sin * (transform.c ?? identity) : transform.c ?? defaultTransform.c,
54
+ d: rotateData.cos * (transform.d ?? defaultTransform.d),
49
55
  };
50
56
  context.setTransform(transformData.a, transformData.b, transformData.c, transformData.d, pos.x, pos.y);
51
57
  if (backgroundMask) {
@@ -172,7 +178,7 @@
172
178
  return {
173
179
  h: color.h,
174
180
  s: color.s,
175
- l: color.l + (type === "darken" ? -lFactor : lFactor) * value,
181
+ l: color.l + (type === AlterType_js_1.AlterType.darken ? -lFactor : lFactor) * value,
176
182
  };
177
183
  }
178
184
  exports.alterHsl = alterHsl;
@@ -4,7 +4,7 @@
4
4
  if (v !== undefined) module.exports = v;
5
5
  }
6
6
  else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports", "./NumberUtils.js", "./TypeUtils.js", "../Core/Utils/Constants.js", "./Utils.js"], factory);
7
+ define(["require", "exports", "./NumberUtils.js", "./TypeUtils.js", "../Core/Utils/Constants.js", "../Enums/AnimationStatus.js", "./Utils.js"], factory);
8
8
  }
9
9
  })(function (require, exports) {
10
10
  "use strict";
@@ -13,7 +13,15 @@
13
13
  const NumberUtils_js_1 = require("./NumberUtils.js");
14
14
  const TypeUtils_js_1 = require("./TypeUtils.js");
15
15
  const Constants_js_1 = require("../Core/Utils/Constants.js");
16
+ const AnimationStatus_js_1 = require("../Enums/AnimationStatus.js");
16
17
  const Utils_js_1 = require("./Utils.js");
18
+ var RgbIndexes;
19
+ (function (RgbIndexes) {
20
+ RgbIndexes[RgbIndexes["r"] = 1] = "r";
21
+ RgbIndexes[RgbIndexes["g"] = 2] = "g";
22
+ RgbIndexes[RgbIndexes["b"] = 3] = "b";
23
+ RgbIndexes[RgbIndexes["a"] = 4] = "a";
24
+ })(RgbIndexes || (RgbIndexes = {}));
17
25
  const randomColorValue = "random", midColorValue = "mid", colorManagers = new Map();
18
26
  function addColorManager(manager) {
19
27
  colorManagers.set(manager.key, manager);
@@ -30,12 +38,12 @@
30
38
  }), 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;
31
39
  return result
32
40
  ? {
33
- a: result[4] !== undefined
34
- ? parseInt(result[4], radix) / alphaFactor
41
+ a: result[RgbIndexes.a] !== undefined
42
+ ? parseInt(result[RgbIndexes.a], radix) / alphaFactor
35
43
  : defaultAlpha,
36
- b: parseInt(result[3], radix),
37
- g: parseInt(result[2], radix),
38
- r: parseInt(result[1], radix),
44
+ b: parseInt(result[RgbIndexes.b], radix),
45
+ g: parseInt(result[RgbIndexes.g], radix),
46
+ r: parseInt(result[RgbIndexes.r], radix),
39
47
  }
40
48
  : undefined;
41
49
  }
@@ -282,7 +290,7 @@
282
290
  if (colorValue.enable) {
283
291
  colorValue.velocity = ((0, NumberUtils_js_1.getRangeValue)(colorAnimation.speed) / Constants_js_1.percentDenominator) * reduceFactor;
284
292
  colorValue.decay = decayOffset - (0, NumberUtils_js_1.getRangeValue)(colorAnimation.decay);
285
- colorValue.status = "increasing";
293
+ colorValue.status = AnimationStatus_js_1.AnimationStatus.increasing;
286
294
  colorValue.loops = defaultLoops;
287
295
  colorValue.maxLoops = (0, NumberUtils_js_1.getRangeValue)(colorAnimation.count);
288
296
  colorValue.time = defaultTime;
@@ -315,7 +323,7 @@
315
323
  return;
316
324
  }
317
325
  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);
318
- if (!decrease || data.status === "increasing") {
326
+ if (!decrease || data.status === AnimationStatus_js_1.AnimationStatus.increasing) {
319
327
  data.value += velocity;
320
328
  if (data.value > max) {
321
329
  if (!data.loops) {
@@ -323,7 +331,7 @@
323
331
  }
324
332
  data.loops++;
325
333
  if (decrease) {
326
- data.status = "decreasing";
334
+ data.status = AnimationStatus_js_1.AnimationStatus.decreasing;
327
335
  }
328
336
  else {
329
337
  data.value -= max;
@@ -338,7 +346,7 @@
338
346
  data.loops = 0;
339
347
  }
340
348
  data.loops++;
341
- data.status = "increasing";
349
+ data.status = AnimationStatus_js_1.AnimationStatus.increasing;
342
350
  }
343
351
  }
344
352
  if (data.velocity && decay !== identity) {
@@ -25,7 +25,7 @@
25
25
  }
26
26
  dispatchEvent(type, args) {
27
27
  const listeners = this._listeners.get(type);
28
- listeners?.forEach((handler) => handler(args));
28
+ listeners?.forEach(handler => handler(args));
29
29
  }
30
30
  hasEventListener(type) {
31
31
  return !!this._listeners.get(type);
@@ -12,6 +12,13 @@
12
12
  exports.HslColorManager = void 0;
13
13
  const NumberUtils_js_1 = require("./NumberUtils.js");
14
14
  const ColorUtils_js_1 = require("./ColorUtils.js");
15
+ var HslIndexes;
16
+ (function (HslIndexes) {
17
+ HslIndexes[HslIndexes["h"] = 1] = "h";
18
+ HslIndexes[HslIndexes["s"] = 2] = "s";
19
+ HslIndexes[HslIndexes["l"] = 3] = "l";
20
+ HslIndexes[HslIndexes["a"] = 5] = "a";
21
+ })(HslIndexes || (HslIndexes = {}));
15
22
  class HslColorManager {
16
23
  constructor() {
17
24
  this.key = "hsl";
@@ -40,10 +47,10 @@
40
47
  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;
41
48
  return result
42
49
  ? (0, ColorUtils_js_1.hslaToRgba)({
43
- a: result.length > minLength ? (0, NumberUtils_js_1.parseAlpha)(result[5]) : defaultAlpha,
44
- h: parseInt(result[1], radix),
45
- l: parseInt(result[3], radix),
46
- s: parseInt(result[2], radix),
50
+ a: result.length > minLength ? (0, NumberUtils_js_1.parseAlpha)(result[HslIndexes.a]) : defaultAlpha,
51
+ h: parseInt(result[HslIndexes.h], radix),
52
+ l: parseInt(result[HslIndexes.l], radix),
53
+ s: parseInt(result[HslIndexes.s], radix),
47
54
  })
48
55
  : undefined;
49
56
  }
@@ -4,12 +4,13 @@
4
4
  if (v !== undefined) module.exports = v;
5
5
  }
6
6
  else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports", "../Core/Utils/Vectors.js", "./TypeUtils.js", "../Core/Utils/Constants.js"], factory);
7
+ define(["require", "exports", "../Enums/Directions/MoveDirection.js", "../Core/Utils/Vectors.js", "./TypeUtils.js", "../Core/Utils/Constants.js"], factory);
8
8
  }
9
9
  })(function (require, exports) {
10
10
  "use strict";
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  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;
13
+ const MoveDirection_js_1 = require("../Enums/Directions/MoveDirection.js");
13
14
  const Vectors_js_1 = require("../Core/Utils/Vectors.js");
14
15
  const TypeUtils_js_1 = require("./TypeUtils.js");
15
16
  const Constants_js_1 = require("../Core/Utils/Constants.js");
@@ -97,25 +98,25 @@
97
98
  }
98
99
  const empty = 0, half = 0.5, quarter = 0.25, threeQuarter = half + quarter;
99
100
  switch (direction) {
100
- case "top":
101
+ case MoveDirection_js_1.MoveDirection.top:
101
102
  return -Math.PI * half;
102
- case "top-right":
103
+ case MoveDirection_js_1.MoveDirection.topRight:
103
104
  return -Math.PI * quarter;
104
- case "right":
105
+ case MoveDirection_js_1.MoveDirection.right:
105
106
  return empty;
106
- case "bottom-right":
107
+ case MoveDirection_js_1.MoveDirection.bottomRight:
107
108
  return Math.PI * quarter;
108
- case "bottom":
109
+ case MoveDirection_js_1.MoveDirection.bottom:
109
110
  return Math.PI * half;
110
- case "bottom-left":
111
+ case MoveDirection_js_1.MoveDirection.bottomLeft:
111
112
  return Math.PI * threeQuarter;
112
- case "left":
113
+ case MoveDirection_js_1.MoveDirection.left:
113
114
  return Math.PI;
114
- case "top-left":
115
+ case MoveDirection_js_1.MoveDirection.topLeft:
115
116
  return -Math.PI * threeQuarter;
116
- case "inside":
117
+ case MoveDirection_js_1.MoveDirection.inside:
117
118
  return Math.atan2(center.y - position.y, center.x - position.x);
118
- case "outside":
119
+ case MoveDirection_js_1.MoveDirection.outside:
119
120
  return Math.atan2(position.y - center.y, position.x - center.x);
120
121
  default:
121
122
  return getRandom() * doublePI;
@@ -11,6 +11,13 @@
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.RgbColorManager = void 0;
13
13
  const NumberUtils_js_1 = require("./NumberUtils.js");
14
+ var RgbIndexes;
15
+ (function (RgbIndexes) {
16
+ RgbIndexes[RgbIndexes["r"] = 1] = "r";
17
+ RgbIndexes[RgbIndexes["g"] = 2] = "g";
18
+ RgbIndexes[RgbIndexes["b"] = 3] = "b";
19
+ RgbIndexes[RgbIndexes["a"] = 5] = "a";
20
+ })(RgbIndexes || (RgbIndexes = {}));
14
21
  class RgbColorManager {
15
22
  constructor() {
16
23
  this.key = "rgb";
@@ -39,10 +46,10 @@
39
46
  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;
40
47
  return result
41
48
  ? {
42
- a: result.length > minLength ? (0, NumberUtils_js_1.parseAlpha)(result[5]) : defaultAlpha,
43
- b: parseInt(result[3], radix),
44
- g: parseInt(result[2], radix),
45
- r: parseInt(result[1], radix),
49
+ a: result.length > minLength ? (0, NumberUtils_js_1.parseAlpha)(result[RgbIndexes.a]) : defaultAlpha,
50
+ b: parseInt(result[RgbIndexes.b], radix),
51
+ g: parseInt(result[RgbIndexes.g], radix),
52
+ r: parseInt(result[RgbIndexes.r], radix),
46
53
  }
47
54
  : undefined;
48
55
  }