@tsparticles/engine 3.3.0 → 3.5.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 (272) hide show
  1. package/README.md +0 -4
  2. package/browser/Core/Canvas.js +27 -22
  3. package/browser/Core/Container.js +57 -44
  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 +28 -14
  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 +57 -44
  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 +24 -19
  108. package/cjs/Utils/ColorUtils.js +37 -30
  109. package/cjs/Utils/EventDispatcher.js +1 -1
  110. package/cjs/Utils/HslColorManager.js +11 -4
  111. package/cjs/Utils/NumberUtils.js +54 -38
  112. package/cjs/Utils/OptionsUtils.js +2 -3
  113. package/cjs/Utils/RgbColorManager.js +11 -4
  114. package/cjs/Utils/TypeUtils.js +6 -7
  115. package/cjs/Utils/Utils.js +66 -61
  116. package/cjs/init.js +1 -2
  117. package/esm/Core/Canvas.js +27 -22
  118. package/esm/Core/Container.js +57 -44
  119. package/esm/Core/Engine.js +82 -74
  120. package/esm/Core/Particle.js +29 -15
  121. package/esm/Core/Particles.js +23 -24
  122. package/esm/Core/Utils/EventListeners.js +18 -17
  123. package/esm/Core/Utils/ExternalInteractorBase.js +2 -1
  124. package/esm/Core/Utils/InteractionManager.js +3 -2
  125. package/esm/Core/Utils/ParticlesInteractorBase.js +2 -1
  126. package/esm/Core/Utils/QuadTree.js +1 -1
  127. package/esm/Core/Utils/Ranges.js +5 -4
  128. package/esm/Enums/AnimationStatus.js +5 -1
  129. package/esm/Enums/Directions/MoveDirection.js +14 -1
  130. package/esm/Enums/Directions/OutModeDirection.js +7 -1
  131. package/esm/Enums/Directions/RotateDirection.js +6 -1
  132. package/esm/Enums/InteractivityDetect.js +6 -1
  133. package/esm/Enums/Modes/AnimationMode.js +7 -1
  134. package/esm/Enums/Modes/CollisionMode.js +6 -1
  135. package/esm/Enums/Modes/LimitMode.js +5 -1
  136. package/esm/Enums/Modes/OutMode.js +8 -1
  137. package/esm/Enums/Modes/PixelMode.js +5 -1
  138. package/esm/Enums/Modes/ResponsiveMode.js +5 -1
  139. package/esm/Enums/Modes/ThemeMode.js +6 -1
  140. package/esm/Enums/Types/AlterType.js +5 -1
  141. package/esm/Enums/Types/DestroyType.js +6 -1
  142. package/esm/Enums/Types/DivType.js +5 -1
  143. package/esm/Enums/Types/EasingType.js +30 -1
  144. package/esm/Enums/Types/EventType.js +15 -1
  145. package/esm/Enums/Types/GradientType.js +6 -1
  146. package/esm/Enums/Types/InteractorType.js +5 -1
  147. package/esm/Enums/Types/ParticleOutType.js +6 -1
  148. package/esm/Enums/Types/StartValueType.js +6 -1
  149. package/esm/Options/Classes/AnimationOptions.js +4 -2
  150. package/esm/Options/Classes/Interactivity/Events/DivEvent.js +2 -1
  151. package/esm/Options/Classes/Interactivity/Events/Events.js +1 -1
  152. package/esm/Options/Classes/Interactivity/Interactivity.js +2 -1
  153. package/esm/Options/Classes/ManualParticle.js +2 -1
  154. package/esm/Options/Classes/Options.js +14 -12
  155. package/esm/Options/Classes/Particles/Collisions/Collisions.js +2 -1
  156. package/esm/Options/Classes/Particles/Move/Move.js +2 -1
  157. package/esm/Options/Classes/Particles/Move/MoveCenter.js +2 -1
  158. package/esm/Options/Classes/Particles/Move/OutModes.js +2 -1
  159. package/esm/Options/Classes/Particles/Number/ParticlesNumberLimit.js +2 -1
  160. package/esm/Options/Classes/Particles/Opacity/OpacityAnimation.js +2 -1
  161. package/esm/Options/Classes/Particles/ParticlesOptions.js +1 -1
  162. package/esm/Options/Classes/Particles/Size/SizeAnimation.js +2 -1
  163. package/esm/Options/Classes/Responsive.js +5 -4
  164. package/esm/Options/Classes/Theme/ThemeDefault.js +2 -1
  165. package/esm/Types/RangeType.js +5 -1
  166. package/esm/Utils/CanvasUtils.js +13 -7
  167. package/esm/Utils/ColorUtils.js +17 -9
  168. package/esm/Utils/EventDispatcher.js +1 -1
  169. package/esm/Utils/HslColorManager.js +11 -4
  170. package/esm/Utils/NumberUtils.js +28 -14
  171. package/esm/Utils/RgbColorManager.js +11 -4
  172. package/esm/Utils/Utils.js +37 -31
  173. package/package.json +1 -1
  174. package/report.html +1 -1
  175. package/tsparticles.engine.js +327 -225
  176. package/tsparticles.engine.min.js +1 -1
  177. package/tsparticles.engine.min.js.LICENSE.txt +1 -1
  178. package/types/Core/Container.d.ts +4 -2
  179. package/types/Core/Engine.d.ts +6 -5
  180. package/types/Core/Interfaces/IPlugin.d.ts +3 -4
  181. package/types/Core/Interfaces/IShapeDrawer.d.ts +1 -0
  182. package/types/Core/Particle.d.ts +1 -0
  183. package/types/Enums/AnimationStatus.d.ts +1 -1
  184. package/types/Enums/Directions/MoveDirection.d.ts +1 -1
  185. package/types/Enums/Directions/OutModeDirection.d.ts +1 -1
  186. package/types/Enums/Directions/RotateDirection.d.ts +1 -1
  187. package/types/Enums/InteractivityDetect.d.ts +1 -1
  188. package/types/Enums/Modes/AnimationMode.d.ts +1 -1
  189. package/types/Enums/Modes/CollisionMode.d.ts +1 -1
  190. package/types/Enums/Modes/LimitMode.d.ts +1 -1
  191. package/types/Enums/Modes/OutMode.d.ts +1 -1
  192. package/types/Enums/Modes/PixelMode.d.ts +1 -1
  193. package/types/Enums/Modes/ResponsiveMode.d.ts +1 -1
  194. package/types/Enums/Modes/ThemeMode.d.ts +1 -1
  195. package/types/Enums/Types/AlterType.d.ts +1 -1
  196. package/types/Enums/Types/DestroyType.d.ts +1 -1
  197. package/types/Enums/Types/DivType.d.ts +1 -1
  198. package/types/Enums/Types/EasingType.d.ts +1 -1
  199. package/types/Enums/Types/EventType.d.ts +1 -1
  200. package/types/Enums/Types/GradientType.d.ts +1 -1
  201. package/types/Enums/Types/InteractorType.d.ts +1 -1
  202. package/types/Enums/Types/ParticleOutType.d.ts +1 -1
  203. package/types/Enums/Types/StartValueType.d.ts +1 -1
  204. package/types/Options/Classes/Options.d.ts +2 -1
  205. package/types/Options/Classes/Responsive.d.ts +2 -2
  206. package/types/Options/Classes/Theme/Theme.d.ts +2 -2
  207. package/types/Options/Interfaces/IResponsive.d.ts +2 -3
  208. package/types/Options/Interfaces/Theme/ITheme.d.ts +2 -3
  209. package/types/Types/RangeType.d.ts +1 -1
  210. package/types/Utils/NumberUtils.d.ts +3 -0
  211. package/umd/Core/Canvas.js +27 -22
  212. package/umd/Core/Container.js +58 -45
  213. package/umd/Core/Engine.js +83 -99
  214. package/umd/Core/Particle.js +30 -16
  215. package/umd/Core/Particles.js +24 -25
  216. package/umd/Core/Utils/EventListeners.js +19 -18
  217. package/umd/Core/Utils/ExternalInteractorBase.js +3 -2
  218. package/umd/Core/Utils/InteractionManager.js +4 -3
  219. package/umd/Core/Utils/ParticlesInteractorBase.js +3 -2
  220. package/umd/Core/Utils/QuadTree.js +1 -1
  221. package/umd/Core/Utils/Ranges.js +6 -5
  222. package/umd/Enums/AnimationStatus.js +6 -0
  223. package/umd/Enums/Directions/MoveDirection.js +15 -0
  224. package/umd/Enums/Directions/OutModeDirection.js +8 -0
  225. package/umd/Enums/Directions/RotateDirection.js +7 -0
  226. package/umd/Enums/InteractivityDetect.js +7 -0
  227. package/umd/Enums/Modes/AnimationMode.js +8 -0
  228. package/umd/Enums/Modes/CollisionMode.js +7 -0
  229. package/umd/Enums/Modes/LimitMode.js +6 -0
  230. package/umd/Enums/Modes/OutMode.js +9 -0
  231. package/umd/Enums/Modes/PixelMode.js +6 -0
  232. package/umd/Enums/Modes/ResponsiveMode.js +6 -0
  233. package/umd/Enums/Modes/ThemeMode.js +7 -0
  234. package/umd/Enums/Types/AlterType.js +6 -0
  235. package/umd/Enums/Types/DestroyType.js +7 -0
  236. package/umd/Enums/Types/DivType.js +6 -0
  237. package/umd/Enums/Types/EasingType.js +31 -0
  238. package/umd/Enums/Types/EventType.js +16 -0
  239. package/umd/Enums/Types/GradientType.js +7 -0
  240. package/umd/Enums/Types/InteractorType.js +6 -0
  241. package/umd/Enums/Types/ParticleOutType.js +7 -0
  242. package/umd/Enums/Types/StartValueType.js +7 -0
  243. package/umd/Options/Classes/AnimationOptions.js +5 -3
  244. package/umd/Options/Classes/Interactivity/Events/DivEvent.js +3 -2
  245. package/umd/Options/Classes/Interactivity/Events/Events.js +1 -1
  246. package/umd/Options/Classes/Interactivity/Interactivity.js +3 -2
  247. package/umd/Options/Classes/ManualParticle.js +3 -2
  248. package/umd/Options/Classes/Options.js +15 -13
  249. package/umd/Options/Classes/Particles/Collisions/Collisions.js +3 -2
  250. package/umd/Options/Classes/Particles/Move/Move.js +3 -2
  251. package/umd/Options/Classes/Particles/Move/MoveCenter.js +3 -2
  252. package/umd/Options/Classes/Particles/Move/OutModes.js +3 -2
  253. package/umd/Options/Classes/Particles/Number/ParticlesNumberLimit.js +3 -2
  254. package/umd/Options/Classes/Particles/Opacity/OpacityAnimation.js +3 -2
  255. package/umd/Options/Classes/Particles/ParticlesOptions.js +1 -1
  256. package/umd/Options/Classes/Particles/Size/SizeAnimation.js +3 -2
  257. package/umd/Options/Classes/Responsive.js +6 -5
  258. package/umd/Options/Classes/Theme/ThemeDefault.js +3 -2
  259. package/umd/Types/RangeType.js +6 -0
  260. package/umd/Utils/CanvasUtils.js +25 -20
  261. package/umd/Utils/ColorUtils.js +38 -31
  262. package/umd/Utils/EventDispatcher.js +1 -1
  263. package/umd/Utils/HslColorManager.js +11 -4
  264. package/umd/Utils/NumberUtils.js +55 -39
  265. package/umd/Utils/OptionsUtils.js +2 -3
  266. package/umd/Utils/RgbColorManager.js +11 -4
  267. package/umd/Utils/TypeUtils.js +6 -7
  268. package/umd/Utils/Utils.js +67 -62
  269. package/umd/init.js +1 -2
  270. package/174.min.js +0 -2
  271. package/174.min.js.LICENSE.txt +0 -1
  272. package/dist_browser_Core_Container_js.js +0 -102
@@ -4,21 +4,47 @@
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";
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.updateColor = exports.updateColorValue = exports.getHslAnimationFromHsl = exports.getHslFromAnimation = exports.getLinkRandomColor = exports.getLinkColor = exports.colorMix = exports.getStyleFromHsl = exports.getStyleFromRgb = exports.getRandomRgbColor = exports.hslaToRgba = exports.hslToRgb = exports.stringToRgb = exports.stringToAlpha = exports.rgbToHsl = exports.rangeColorToHsl = exports.colorToHsl = exports.colorToRgb = exports.rangeColorToRgb = exports.addColorManager = void 0;
12
+ exports.addColorManager = addColorManager;
13
+ exports.rangeColorToRgb = rangeColorToRgb;
14
+ exports.colorToRgb = colorToRgb;
15
+ exports.colorToHsl = colorToHsl;
16
+ exports.rangeColorToHsl = rangeColorToHsl;
17
+ exports.rgbToHsl = rgbToHsl;
18
+ exports.stringToAlpha = stringToAlpha;
19
+ exports.stringToRgb = stringToRgb;
20
+ exports.hslToRgb = hslToRgb;
21
+ exports.hslaToRgba = hslaToRgba;
22
+ exports.getRandomRgbColor = getRandomRgbColor;
23
+ exports.getStyleFromRgb = getStyleFromRgb;
24
+ exports.getStyleFromHsl = getStyleFromHsl;
25
+ exports.colorMix = colorMix;
26
+ exports.getLinkColor = getLinkColor;
27
+ exports.getLinkRandomColor = getLinkRandomColor;
28
+ exports.getHslFromAnimation = getHslFromAnimation;
29
+ exports.getHslAnimationFromHsl = getHslAnimationFromHsl;
30
+ exports.updateColorValue = updateColorValue;
31
+ exports.updateColor = updateColor;
13
32
  const NumberUtils_js_1 = require("./NumberUtils.js");
14
33
  const TypeUtils_js_1 = require("./TypeUtils.js");
15
34
  const Constants_js_1 = require("../Core/Utils/Constants.js");
35
+ const AnimationStatus_js_1 = require("../Enums/AnimationStatus.js");
16
36
  const Utils_js_1 = require("./Utils.js");
37
+ var RgbIndexes;
38
+ (function (RgbIndexes) {
39
+ RgbIndexes[RgbIndexes["r"] = 1] = "r";
40
+ RgbIndexes[RgbIndexes["g"] = 2] = "g";
41
+ RgbIndexes[RgbIndexes["b"] = 3] = "b";
42
+ RgbIndexes[RgbIndexes["a"] = 4] = "a";
43
+ })(RgbIndexes || (RgbIndexes = {}));
17
44
  const randomColorValue = "random", midColorValue = "mid", colorManagers = new Map();
18
45
  function addColorManager(manager) {
19
46
  colorManagers.set(manager.key, manager);
20
47
  }
21
- exports.addColorManager = addColorManager;
22
48
  function stringToRgba(input) {
23
49
  for (const [, manager] of colorManagers) {
24
50
  if (input.startsWith(manager.stringPrefix)) {
@@ -30,12 +56,12 @@
30
56
  }), 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
57
  return result
32
58
  ? {
33
- a: result[4] !== undefined
34
- ? parseInt(result[4], radix) / alphaFactor
59
+ a: result[RgbIndexes.a] !== undefined
60
+ ? parseInt(result[RgbIndexes.a], radix) / alphaFactor
35
61
  : defaultAlpha,
36
- b: parseInt(result[3], radix),
37
- g: parseInt(result[2], radix),
38
- r: parseInt(result[1], radix),
62
+ b: parseInt(result[RgbIndexes.b], radix),
63
+ g: parseInt(result[RgbIndexes.g], radix),
64
+ r: parseInt(result[RgbIndexes.r], radix),
39
65
  }
40
66
  : undefined;
41
67
  }
@@ -59,7 +85,6 @@
59
85
  }
60
86
  }
61
87
  }
62
- exports.rangeColorToRgb = rangeColorToRgb;
63
88
  function colorToRgb(input, index, useIndex = true) {
64
89
  if (!input) {
65
90
  return;
@@ -80,17 +105,14 @@
80
105
  }
81
106
  }
82
107
  }
83
- exports.colorToRgb = colorToRgb;
84
108
  function colorToHsl(color, index, useIndex = true) {
85
109
  const rgb = colorToRgb(color, index, useIndex);
86
110
  return rgb ? rgbToHsl(rgb) : undefined;
87
111
  }
88
- exports.colorToHsl = colorToHsl;
89
112
  function rangeColorToHsl(color, index, useIndex = true) {
90
113
  const rgb = rangeColorToRgb(color, index, useIndex);
91
114
  return rgb ? rgbToHsl(rgb) : undefined;
92
115
  }
93
- exports.rangeColorToHsl = rangeColorToHsl;
94
116
  function rgbToHsl(color) {
95
117
  const rgbMax = 255, hMax = 360, sMax = 100, lMax = 100, hMin = 0, sMin = 0, hPhase = 60, half = 0.5, double = 2, r1 = color.r / rgbMax, g1 = color.g / rgbMax, b1 = color.b / rgbMax, max = Math.max(r1, g1, b1), min = Math.min(r1, g1, b1), res = {
96
118
  h: hMin,
@@ -115,15 +137,12 @@
115
137
  }
116
138
  return res;
117
139
  }
118
- exports.rgbToHsl = rgbToHsl;
119
140
  function stringToAlpha(input) {
120
141
  return stringToRgba(input)?.a;
121
142
  }
122
- exports.stringToAlpha = stringToAlpha;
123
143
  function stringToRgb(input) {
124
144
  return stringToRgba(input);
125
145
  }
126
- exports.stringToRgb = stringToRgb;
127
146
  function hslToRgb(hsl) {
128
147
  const hMax = 360, sMax = 100, lMax = 100, sMin = 0, lMin = 0, h = ((hsl.h % hMax) + hMax) % hMax, s = Math.max(sMin, Math.min(sMax, hsl.s)), l = Math.max(lMin, Math.min(lMax, hsl.l)), hNormalized = h / hMax, sNormalized = s / sMax, lNormalized = l / lMax, rgbFactor = 255, triple = 3;
129
148
  if (s === sMin) {
@@ -154,7 +173,6 @@
154
173
  : lNormalized + sNormalized - lNormalized * sNormalized, temp2 = double * lNormalized - temp1, phaseNumerator = 1, phaseThird = phaseNumerator / triple, red = Math.min(rgbFactor, rgbFactor * channel(temp2, temp1, hNormalized + phaseThird)), green = Math.min(rgbFactor, rgbFactor * channel(temp2, temp1, hNormalized)), blue = Math.min(rgbFactor, rgbFactor * channel(temp2, temp1, hNormalized - phaseThird));
155
174
  return { r: Math.round(red), g: Math.round(green), b: Math.round(blue) };
156
175
  }
157
- exports.hslToRgb = hslToRgb;
158
176
  function hslaToRgba(hsla) {
159
177
  const rgbResult = hslToRgb(hsla);
160
178
  return {
@@ -164,7 +182,6 @@
164
182
  r: rgbResult.r,
165
183
  };
166
184
  }
167
- exports.hslaToRgba = hslaToRgba;
168
185
  function getRandomRgbColor(min) {
169
186
  const defaultMin = 0, fixedMin = min ?? defaultMin, rgbMax = 256;
170
187
  return {
@@ -173,17 +190,14 @@
173
190
  r: Math.floor((0, NumberUtils_js_1.randomInRange)((0, NumberUtils_js_1.setRangeValue)(fixedMin, rgbMax))),
174
191
  };
175
192
  }
176
- exports.getRandomRgbColor = getRandomRgbColor;
177
193
  function getStyleFromRgb(color, opacity) {
178
194
  const defaultOpacity = 1;
179
195
  return `rgba(${color.r}, ${color.g}, ${color.b}, ${opacity ?? defaultOpacity})`;
180
196
  }
181
- exports.getStyleFromRgb = getStyleFromRgb;
182
197
  function getStyleFromHsl(color, opacity) {
183
198
  const defaultOpacity = 1;
184
199
  return `hsla(${color.h}, ${color.s}%, ${color.l}%, ${opacity ?? defaultOpacity})`;
185
200
  }
186
- exports.getStyleFromHsl = getStyleFromHsl;
187
201
  function colorMix(color1, color2, size1, size2) {
188
202
  let rgb1 = color1, rgb2 = color2;
189
203
  if (rgb1.r === undefined) {
@@ -198,7 +212,6 @@
198
212
  r: (0, NumberUtils_js_1.mix)(rgb1.r, rgb2.r, size1, size2),
199
213
  };
200
214
  }
201
- exports.colorMix = colorMix;
202
215
  function getLinkColor(p1, p2, linkColor) {
203
216
  if (linkColor === randomColorValue) {
204
217
  return getRandomRgbColor();
@@ -219,7 +232,6 @@
219
232
  return linkColor;
220
233
  }
221
234
  }
222
- exports.getLinkColor = getLinkColor;
223
235
  function getLinkRandomColor(optColor, blink, consent) {
224
236
  const color = (0, TypeUtils_js_1.isString)(optColor) ? optColor : optColor.value;
225
237
  if (color === randomColorValue) {
@@ -242,7 +254,6 @@
242
254
  });
243
255
  }
244
256
  }
245
- exports.getLinkRandomColor = getLinkRandomColor;
246
257
  function getHslFromAnimation(animation) {
247
258
  return animation !== undefined
248
259
  ? {
@@ -252,7 +263,6 @@
252
263
  }
253
264
  : undefined;
254
265
  }
255
- exports.getHslFromAnimation = getHslFromAnimation;
256
266
  function getHslAnimationFromHsl(hsl, animationOptions, reduceFactor) {
257
267
  const resColor = {
258
268
  h: {
@@ -275,14 +285,13 @@
275
285
  }
276
286
  return resColor;
277
287
  }
278
- exports.getHslAnimationFromHsl = getHslAnimationFromHsl;
279
288
  function setColorAnimation(colorValue, colorAnimation, reduceFactor) {
280
289
  colorValue.enable = colorAnimation.enable;
281
290
  const defaultVelocity = 0, decayOffset = 1, defaultLoops = 0, defaultTime = 0;
282
291
  if (colorValue.enable) {
283
292
  colorValue.velocity = ((0, NumberUtils_js_1.getRangeValue)(colorAnimation.speed) / Constants_js_1.percentDenominator) * reduceFactor;
284
293
  colorValue.decay = decayOffset - (0, NumberUtils_js_1.getRangeValue)(colorAnimation.decay);
285
- colorValue.status = "increasing";
294
+ colorValue.status = AnimationStatus_js_1.AnimationStatus.increasing;
286
295
  colorValue.loops = defaultLoops;
287
296
  colorValue.maxLoops = (0, NumberUtils_js_1.getRangeValue)(colorAnimation.count);
288
297
  colorValue.time = defaultTime;
@@ -315,7 +324,7 @@
315
324
  return;
316
325
  }
317
326
  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") {
327
+ if (!decrease || data.status === AnimationStatus_js_1.AnimationStatus.increasing) {
319
328
  data.value += velocity;
320
329
  if (data.value > max) {
321
330
  if (!data.loops) {
@@ -323,7 +332,7 @@
323
332
  }
324
333
  data.loops++;
325
334
  if (decrease) {
326
- data.status = "decreasing";
335
+ data.status = AnimationStatus_js_1.AnimationStatus.decreasing;
327
336
  }
328
337
  else {
329
338
  data.value -= max;
@@ -338,7 +347,7 @@
338
347
  data.loops = 0;
339
348
  }
340
349
  data.loops++;
341
- data.status = "increasing";
350
+ data.status = AnimationStatus_js_1.AnimationStatus.increasing;
342
351
  }
343
352
  }
344
353
  if (data.velocity && decay !== identity) {
@@ -346,7 +355,6 @@
346
355
  }
347
356
  data.value = (0, NumberUtils_js_1.clamp)(data.value, min, max);
348
357
  }
349
- exports.updateColorValue = updateColorValue;
350
358
  function updateColor(color, delta) {
351
359
  if (!color) {
352
360
  return;
@@ -367,5 +375,4 @@
367
375
  updateColorValue(l, ranges.l, true, delta);
368
376
  }
369
377
  }
370
- exports.updateColor = updateColor;
371
378
  });
@@ -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,45 +4,78 @@
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
- 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;
12
+ exports.addEasing = addEasing;
13
+ exports.getEasing = getEasing;
14
+ exports.setRandom = setRandom;
15
+ exports.getRandom = getRandom;
16
+ exports.setAnimationFunctions = setAnimationFunctions;
17
+ exports.animate = animate;
18
+ exports.cancelAnimation = cancelAnimation;
19
+ exports.clamp = clamp;
20
+ exports.mix = mix;
21
+ exports.randomInRange = randomInRange;
22
+ exports.getRangeValue = getRangeValue;
23
+ exports.getRangeMin = getRangeMin;
24
+ exports.getRangeMax = getRangeMax;
25
+ exports.setRangeValue = setRangeValue;
26
+ exports.getDistances = getDistances;
27
+ exports.getDistance = getDistance;
28
+ exports.degToRad = degToRad;
29
+ exports.getParticleDirectionAngle = getParticleDirectionAngle;
30
+ exports.getParticleBaseVelocity = getParticleBaseVelocity;
31
+ exports.collisionVelocity = collisionVelocity;
32
+ exports.calcPositionFromSize = calcPositionFromSize;
33
+ exports.calcPositionOrRandomFromSize = calcPositionOrRandomFromSize;
34
+ exports.calcPositionOrRandomFromSizeRanged = calcPositionOrRandomFromSizeRanged;
35
+ exports.calcExactPositionOrRandomFromSize = calcExactPositionOrRandomFromSize;
36
+ exports.calcExactPositionOrRandomFromSizeRanged = calcExactPositionOrRandomFromSizeRanged;
37
+ exports.parseAlpha = parseAlpha;
38
+ const MoveDirection_js_1 = require("../Enums/Directions/MoveDirection.js");
13
39
  const Vectors_js_1 = require("../Core/Utils/Vectors.js");
14
40
  const TypeUtils_js_1 = require("./TypeUtils.js");
15
41
  const Constants_js_1 = require("../Core/Utils/Constants.js");
16
42
  let _random = Math.random;
17
- const easings = new Map(), double = 2, doublePI = Math.PI * double;
43
+ const _animationLoop = {
44
+ nextFrame: (cb) => requestAnimationFrame(cb),
45
+ cancel: (idx) => cancelAnimationFrame(idx),
46
+ }, easingFunctions = new Map(), double = 2, doublePI = Math.PI * double;
18
47
  function addEasing(name, easing) {
19
- if (easings.get(name)) {
48
+ if (easingFunctions.get(name)) {
20
49
  return;
21
50
  }
22
- easings.set(name, easing);
51
+ easingFunctions.set(name, easing);
23
52
  }
24
- exports.addEasing = addEasing;
25
53
  function getEasing(name) {
26
- return easings.get(name) ?? ((value) => value);
54
+ return easingFunctions.get(name) ?? ((value) => value);
27
55
  }
28
- exports.getEasing = getEasing;
29
56
  function setRandom(rnd = Math.random) {
30
57
  _random = rnd;
31
58
  }
32
- exports.setRandom = setRandom;
33
59
  function getRandom() {
34
60
  const min = 0, max = 1;
35
61
  return clamp(_random(), min, max - Number.EPSILON);
36
62
  }
37
- exports.getRandom = getRandom;
63
+ function setAnimationFunctions(nextFrame, cancel) {
64
+ _animationLoop.nextFrame = (callback) => nextFrame(callback);
65
+ _animationLoop.cancel = (handle) => cancel(handle);
66
+ }
67
+ function animate(fn) {
68
+ return _animationLoop.nextFrame(fn);
69
+ }
70
+ function cancelAnimation(handle) {
71
+ _animationLoop.cancel(handle);
72
+ }
38
73
  function clamp(num, min, max) {
39
74
  return Math.min(Math.max(num, min), max);
40
75
  }
41
- exports.clamp = clamp;
42
76
  function mix(comp1, comp2, weight1, weight2) {
43
77
  return Math.floor((comp1 * weight1 + comp2 * weight2) / (weight1 + weight2));
44
78
  }
45
- exports.mix = mix;
46
79
  function randomInRange(r) {
47
80
  const max = getRangeMax(r), minOffset = 0;
48
81
  let min = getRangeMin(r);
@@ -51,19 +84,15 @@
51
84
  }
52
85
  return getRandom() * (max - min) + min;
53
86
  }
54
- exports.randomInRange = randomInRange;
55
87
  function getRangeValue(value) {
56
88
  return (0, TypeUtils_js_1.isNumber)(value) ? value : randomInRange(value);
57
89
  }
58
- exports.getRangeValue = getRangeValue;
59
90
  function getRangeMin(value) {
60
91
  return (0, TypeUtils_js_1.isNumber)(value) ? value : value.min;
61
92
  }
62
- exports.getRangeMin = getRangeMin;
63
93
  function getRangeMax(value) {
64
94
  return (0, TypeUtils_js_1.isNumber)(value) ? value : value.max;
65
95
  }
66
- exports.getRangeMax = getRangeMax;
67
96
  function setRangeValue(source, value) {
68
97
  if (source === value || (value === undefined && (0, TypeUtils_js_1.isNumber)(source))) {
69
98
  return source;
@@ -76,64 +105,57 @@
76
105
  }
77
106
  : setRangeValue(min, max);
78
107
  }
79
- exports.setRangeValue = setRangeValue;
80
108
  function getDistances(pointA, pointB) {
81
109
  const dx = pointA.x - pointB.x, dy = pointA.y - pointB.y, squareExp = 2;
82
110
  return { dx: dx, dy: dy, distance: Math.sqrt(dx ** squareExp + dy ** squareExp) };
83
111
  }
84
- exports.getDistances = getDistances;
85
112
  function getDistance(pointA, pointB) {
86
113
  return getDistances(pointA, pointB).distance;
87
114
  }
88
- exports.getDistance = getDistance;
89
115
  function degToRad(degrees) {
90
116
  const PIDeg = 180;
91
117
  return (degrees * Math.PI) / PIDeg;
92
118
  }
93
- exports.degToRad = degToRad;
94
119
  function getParticleDirectionAngle(direction, position, center) {
95
120
  if ((0, TypeUtils_js_1.isNumber)(direction)) {
96
121
  return degToRad(direction);
97
122
  }
98
123
  const empty = 0, half = 0.5, quarter = 0.25, threeQuarter = half + quarter;
99
124
  switch (direction) {
100
- case "top":
125
+ case MoveDirection_js_1.MoveDirection.top:
101
126
  return -Math.PI * half;
102
- case "top-right":
127
+ case MoveDirection_js_1.MoveDirection.topRight:
103
128
  return -Math.PI * quarter;
104
- case "right":
129
+ case MoveDirection_js_1.MoveDirection.right:
105
130
  return empty;
106
- case "bottom-right":
131
+ case MoveDirection_js_1.MoveDirection.bottomRight:
107
132
  return Math.PI * quarter;
108
- case "bottom":
133
+ case MoveDirection_js_1.MoveDirection.bottom:
109
134
  return Math.PI * half;
110
- case "bottom-left":
135
+ case MoveDirection_js_1.MoveDirection.bottomLeft:
111
136
  return Math.PI * threeQuarter;
112
- case "left":
137
+ case MoveDirection_js_1.MoveDirection.left:
113
138
  return Math.PI;
114
- case "top-left":
139
+ case MoveDirection_js_1.MoveDirection.topLeft:
115
140
  return -Math.PI * threeQuarter;
116
- case "inside":
141
+ case MoveDirection_js_1.MoveDirection.inside:
117
142
  return Math.atan2(center.y - position.y, center.x - position.x);
118
- case "outside":
143
+ case MoveDirection_js_1.MoveDirection.outside:
119
144
  return Math.atan2(position.y - center.y, position.x - center.x);
120
145
  default:
121
146
  return getRandom() * doublePI;
122
147
  }
123
148
  }
124
- exports.getParticleDirectionAngle = getParticleDirectionAngle;
125
149
  function getParticleBaseVelocity(direction) {
126
150
  const baseVelocity = Vectors_js_1.Vector.origin;
127
151
  baseVelocity.length = 1;
128
152
  baseVelocity.angle = direction;
129
153
  return baseVelocity;
130
154
  }
131
- exports.getParticleBaseVelocity = getParticleBaseVelocity;
132
155
  function collisionVelocity(v1, v2, m1, m2) {
133
156
  const double = 2;
134
157
  return Vectors_js_1.Vector.create((v1.x * (m1 - m2)) / (m1 + m2) + (v2.x * double * m2) / (m1 + m2), v1.y);
135
158
  }
136
- exports.collisionVelocity = collisionVelocity;
137
159
  function calcPositionFromSize(data) {
138
160
  return data.position?.x !== undefined && data.position.y !== undefined
139
161
  ? {
@@ -142,14 +164,12 @@
142
164
  }
143
165
  : undefined;
144
166
  }
145
- exports.calcPositionFromSize = calcPositionFromSize;
146
167
  function calcPositionOrRandomFromSize(data) {
147
168
  return {
148
169
  x: ((data.position?.x ?? getRandom() * Constants_js_1.percentDenominator) * data.size.width) / Constants_js_1.percentDenominator,
149
170
  y: ((data.position?.y ?? getRandom() * Constants_js_1.percentDenominator) * data.size.height) / Constants_js_1.percentDenominator,
150
171
  };
151
172
  }
152
- exports.calcPositionOrRandomFromSize = calcPositionOrRandomFromSize;
153
173
  function calcPositionOrRandomFromSizeRanged(data) {
154
174
  const position = {
155
175
  x: data.position?.x !== undefined ? getRangeValue(data.position.x) : undefined,
@@ -157,14 +177,12 @@
157
177
  };
158
178
  return calcPositionOrRandomFromSize({ size: data.size, position });
159
179
  }
160
- exports.calcPositionOrRandomFromSizeRanged = calcPositionOrRandomFromSizeRanged;
161
180
  function calcExactPositionOrRandomFromSize(data) {
162
181
  return {
163
182
  x: data.position?.x ?? getRandom() * data.size.width,
164
183
  y: data.position?.y ?? getRandom() * data.size.height,
165
184
  };
166
185
  }
167
- exports.calcExactPositionOrRandomFromSize = calcExactPositionOrRandomFromSize;
168
186
  function calcExactPositionOrRandomFromSizeRanged(data) {
169
187
  const position = {
170
188
  x: data.position?.x !== undefined ? getRangeValue(data.position.x) : undefined,
@@ -172,7 +190,6 @@
172
190
  };
173
191
  return calcExactPositionOrRandomFromSize({ size: data.size, position });
174
192
  }
175
- exports.calcExactPositionOrRandomFromSizeRanged = calcExactPositionOrRandomFromSizeRanged;
176
193
  function parseAlpha(input) {
177
194
  const defaultAlpha = 1;
178
195
  if (!input) {
@@ -180,5 +197,4 @@
180
197
  }
181
198
  return input.endsWith("%") ? parseFloat(input) / Constants_js_1.percentDenominator : parseFloat(input);
182
199
  }
183
- exports.parseAlpha = parseAlpha;
184
200
  });
@@ -9,18 +9,17 @@
9
9
  })(function (require, exports) {
10
10
  "use strict";
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.loadParticlesOptions = exports.loadOptions = void 0;
12
+ exports.loadOptions = loadOptions;
13
+ exports.loadParticlesOptions = loadParticlesOptions;
13
14
  const ParticlesOptions_js_1 = require("../Options/Classes/Particles/ParticlesOptions.js");
14
15
  function loadOptions(options, ...sourceOptionsArr) {
15
16
  for (const sourceOptions of sourceOptionsArr) {
16
17
  options.load(sourceOptions);
17
18
  }
18
19
  }
19
- exports.loadOptions = loadOptions;
20
20
  function loadParticlesOptions(engine, container, ...sourceOptionsArr) {
21
21
  const options = new ParticlesOptions_js_1.ParticlesOptions(engine, container);
22
22
  loadOptions(options, ...sourceOptionsArr);
23
23
  return options;
24
24
  }
25
- exports.loadParticlesOptions = loadParticlesOptions;
26
25
  });
@@ -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
  }
@@ -9,29 +9,28 @@
9
9
  })(function (require, exports) {
10
10
  "use strict";
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.isArray = exports.isObject = exports.isFunction = exports.isNumber = exports.isString = exports.isBoolean = void 0;
12
+ exports.isBoolean = isBoolean;
13
+ exports.isString = isString;
14
+ exports.isNumber = isNumber;
15
+ exports.isFunction = isFunction;
16
+ exports.isObject = isObject;
17
+ exports.isArray = isArray;
13
18
  function isBoolean(arg) {
14
19
  return typeof arg === "boolean";
15
20
  }
16
- exports.isBoolean = isBoolean;
17
21
  function isString(arg) {
18
22
  return typeof arg === "string";
19
23
  }
20
- exports.isString = isString;
21
24
  function isNumber(arg) {
22
25
  return typeof arg === "number";
23
26
  }
24
- exports.isNumber = isNumber;
25
27
  function isFunction(arg) {
26
28
  return typeof arg === "function";
27
29
  }
28
- exports.isFunction = isFunction;
29
30
  function isObject(arg) {
30
31
  return typeof arg === "object" && arg !== null;
31
32
  }
32
- exports.isObject = isObject;
33
33
  function isArray(arg) {
34
34
  return Array.isArray(arg);
35
35
  }
36
- exports.isArray = isArray;
37
36
  });