@tsparticles/engine 3.0.0-beta.0 → 3.0.0-beta.1
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.
- package/browser/Core/Canvas.js +4 -4
- package/browser/Core/Container.js +9 -9
- package/browser/Core/Engine.js +6 -6
- package/browser/Core/Particle.js +9 -9
- package/browser/Core/Particles.js +7 -7
- package/browser/Core/Retina.js +2 -2
- package/browser/Core/Utils/Circle.js +3 -3
- package/browser/Core/Utils/EventListeners.js +2 -2
- package/browser/Core/Utils/QuadTree.js +3 -3
- package/browser/Core/Utils/Rectangle.js +2 -2
- package/browser/Core/Utils/Vector.js +1 -1
- package/browser/Core/Utils/Vector3d.js +2 -2
- package/browser/Options/Classes/AnimatableColor.js +3 -3
- package/browser/Options/Classes/AnimationOptions.js +1 -1
- package/browser/Options/Classes/Background/Background.js +1 -1
- package/browser/Options/Classes/BackgroundMask/BackgroundMask.js +2 -2
- package/browser/Options/Classes/BackgroundMask/BackgroundMaskCover.js +1 -1
- package/browser/Options/Classes/ColorAnimation.js +1 -1
- package/browser/Options/Classes/HslAnimation.js +1 -1
- package/browser/Options/Classes/Interactivity/Events/Events.js +5 -5
- package/browser/Options/Classes/Interactivity/Events/HoverEvent.js +1 -1
- package/browser/Options/Classes/Interactivity/Interactivity.js +2 -2
- package/browser/Options/Classes/ManualParticle.js +1 -1
- package/browser/Options/Classes/Options.js +10 -10
- package/browser/Options/Classes/OptionsColor.js +1 -1
- package/browser/Options/Classes/Particles/Bounce/ParticlesBounce.js +1 -1
- package/browser/Options/Classes/Particles/Bounce/ParticlesBounceFactor.js +1 -1
- package/browser/Options/Classes/Particles/Collisions/Collisions.js +4 -4
- package/browser/Options/Classes/Particles/Move/Move.js +10 -10
- package/browser/Options/Classes/Particles/Move/MoveAngle.js +1 -1
- package/browser/Options/Classes/Particles/Move/MoveAttract.js +1 -1
- package/browser/Options/Classes/Particles/Move/MoveGravity.js +1 -1
- package/browser/Options/Classes/Particles/Move/MoveTrail.js +1 -1
- package/browser/Options/Classes/Particles/Move/MoveTrailFill.js +1 -1
- package/browser/Options/Classes/Particles/Move/Path/MovePath.js +2 -2
- package/browser/Options/Classes/Particles/Move/Spin.js +2 -2
- package/browser/Options/Classes/Particles/Number/ParticlesNumber.js +1 -1
- package/browser/Options/Classes/Particles/Opacity/Opacity.js +2 -2
- package/browser/Options/Classes/Particles/Opacity/OpacityAnimation.js +1 -1
- package/browser/Options/Classes/Particles/ParticlesOptions.js +12 -12
- package/browser/Options/Classes/Particles/Shadow.js +1 -1
- package/browser/Options/Classes/Particles/Shape/Shape.js +1 -1
- package/browser/Options/Classes/Particles/Size/Size.js +2 -2
- package/browser/Options/Classes/Particles/Size/SizeAnimation.js +1 -1
- package/browser/Options/Classes/Particles/Stroke.js +2 -2
- package/browser/Options/Classes/Particles/ZIndex/ZIndex.js +1 -1
- package/browser/Options/Classes/Responsive.js +1 -1
- package/browser/Options/Classes/Theme/Theme.js +2 -2
- package/browser/Options/Classes/ValueWithRandom.js +4 -4
- package/browser/Utils/CanvasUtils.js +1 -1
- package/browser/Utils/ColorUtils.js +2 -2
- package/browser/Utils/HslColorManager.js +2 -2
- package/browser/Utils/NumberUtils.js +2 -2
- package/browser/Utils/OptionsUtils.js +1 -1
- package/browser/Utils/RgbColorManager.js +1 -1
- package/browser/Utils/Utils.js +2 -2
- package/browser/bundle.js +2 -2
- package/browser/export-types.js +97 -97
- package/browser/exports.js +89 -89
- package/browser/index.js +4 -4
- package/browser/init.js +4 -4
- package/browser/package.json +1 -0
- package/cjs/Core/Canvas.js +28 -28
- package/cjs/Core/Container.js +19 -19
- package/cjs/Core/Engine.js +22 -22
- package/cjs/Core/Particle.js +37 -37
- package/cjs/Core/Particles.js +15 -15
- package/cjs/Core/Retina.js +11 -11
- package/cjs/Core/Utils/Circle.js +6 -6
- package/cjs/Core/Utils/EventListeners.js +19 -19
- package/cjs/Core/Utils/QuadTree.js +7 -7
- package/cjs/Core/Utils/Rectangle.js +4 -4
- package/cjs/Core/Utils/Vector.js +2 -2
- package/cjs/Core/Utils/Vector3d.js +4 -4
- package/cjs/Options/Classes/AnimatableColor.js +6 -6
- package/cjs/Options/Classes/AnimationOptions.js +5 -5
- package/cjs/Options/Classes/Background/Background.js +3 -3
- package/cjs/Options/Classes/BackgroundMask/BackgroundMask.js +4 -4
- package/cjs/Options/Classes/BackgroundMask/BackgroundMaskCover.js +3 -3
- package/cjs/Options/Classes/ColorAnimation.js +6 -6
- package/cjs/Options/Classes/HslAnimation.js +4 -4
- package/cjs/Options/Classes/Interactivity/Events/Events.js +12 -12
- package/cjs/Options/Classes/Interactivity/Events/HoverEvent.js +2 -2
- package/cjs/Options/Classes/Interactivity/Interactivity.js +4 -4
- package/cjs/Options/Classes/ManualParticle.js +2 -2
- package/cjs/Options/Classes/Options.js +24 -24
- package/cjs/Options/Classes/OptionsColor.js +2 -2
- package/cjs/Options/Classes/Particles/Bounce/ParticlesBounce.js +3 -3
- package/cjs/Options/Classes/Particles/Bounce/ParticlesBounceFactor.js +2 -2
- package/cjs/Options/Classes/Particles/Collisions/Collisions.js +8 -8
- package/cjs/Options/Classes/Particles/Move/Move.js +24 -24
- package/cjs/Options/Classes/Particles/Move/MoveAngle.js +3 -3
- package/cjs/Options/Classes/Particles/Move/MoveAttract.js +2 -2
- package/cjs/Options/Classes/Particles/Move/MoveGravity.js +3 -3
- package/cjs/Options/Classes/Particles/Move/MoveTrail.js +2 -2
- package/cjs/Options/Classes/Particles/Move/MoveTrailFill.js +2 -2
- package/cjs/Options/Classes/Particles/Move/Path/MovePath.js +4 -4
- package/cjs/Options/Classes/Particles/Move/Spin.js +4 -4
- package/cjs/Options/Classes/Particles/Number/ParticlesNumber.js +2 -2
- package/cjs/Options/Classes/Particles/Opacity/Opacity.js +4 -4
- package/cjs/Options/Classes/Particles/Opacity/OpacityAnimation.js +2 -2
- package/cjs/Options/Classes/Particles/ParticlesOptions.js +28 -28
- package/cjs/Options/Classes/Particles/Shadow.js +3 -3
- package/cjs/Options/Classes/Particles/Shape/Shape.js +2 -2
- package/cjs/Options/Classes/Particles/Size/Size.js +4 -4
- package/cjs/Options/Classes/Particles/Size/SizeAnimation.js +2 -2
- package/cjs/Options/Classes/Particles/Stroke.js +5 -5
- package/cjs/Options/Classes/Particles/ZIndex/ZIndex.js +2 -2
- package/cjs/Options/Classes/Responsive.js +2 -2
- package/cjs/Options/Classes/Theme/Theme.js +4 -4
- package/cjs/Options/Classes/ValueWithRandom.js +9 -9
- package/cjs/Utils/CanvasUtils.js +2 -2
- package/cjs/Utils/ColorUtils.js +23 -23
- package/cjs/Utils/HslColorManager.js +9 -9
- package/cjs/Utils/NumberUtils.js +10 -10
- package/cjs/Utils/OptionsUtils.js +2 -2
- package/cjs/Utils/RgbColorManager.js +5 -5
- package/cjs/Utils/Utils.js +17 -17
- package/cjs/bundle.js +3 -3
- package/cjs/export-types.js +97 -97
- package/cjs/exports.js +89 -89
- package/cjs/index.js +6 -6
- package/cjs/init.js +8 -8
- package/cjs/package.json +1 -0
- package/esm/Core/Canvas.js +4 -4
- package/esm/Core/Container.js +9 -9
- package/esm/Core/Engine.js +6 -6
- package/esm/Core/Particle.js +9 -9
- package/esm/Core/Particles.js +7 -7
- package/esm/Core/Retina.js +2 -2
- package/esm/Core/Utils/Circle.js +3 -3
- package/esm/Core/Utils/EventListeners.js +2 -2
- package/esm/Core/Utils/QuadTree.js +3 -3
- package/esm/Core/Utils/Rectangle.js +2 -2
- package/esm/Core/Utils/Vector.js +1 -1
- package/esm/Core/Utils/Vector3d.js +2 -2
- package/esm/Options/Classes/AnimatableColor.js +3 -3
- package/esm/Options/Classes/AnimationOptions.js +1 -1
- package/esm/Options/Classes/Background/Background.js +1 -1
- package/esm/Options/Classes/BackgroundMask/BackgroundMask.js +2 -2
- package/esm/Options/Classes/BackgroundMask/BackgroundMaskCover.js +1 -1
- package/esm/Options/Classes/ColorAnimation.js +1 -1
- package/esm/Options/Classes/HslAnimation.js +1 -1
- package/esm/Options/Classes/Interactivity/Events/Events.js +5 -5
- package/esm/Options/Classes/Interactivity/Events/HoverEvent.js +1 -1
- package/esm/Options/Classes/Interactivity/Interactivity.js +2 -2
- package/esm/Options/Classes/ManualParticle.js +1 -1
- package/esm/Options/Classes/Options.js +10 -10
- package/esm/Options/Classes/OptionsColor.js +1 -1
- package/esm/Options/Classes/Particles/Bounce/ParticlesBounce.js +1 -1
- package/esm/Options/Classes/Particles/Bounce/ParticlesBounceFactor.js +1 -1
- package/esm/Options/Classes/Particles/Collisions/Collisions.js +4 -4
- package/esm/Options/Classes/Particles/Move/Move.js +10 -10
- package/esm/Options/Classes/Particles/Move/MoveAngle.js +1 -1
- package/esm/Options/Classes/Particles/Move/MoveAttract.js +1 -1
- package/esm/Options/Classes/Particles/Move/MoveGravity.js +1 -1
- package/esm/Options/Classes/Particles/Move/MoveTrail.js +1 -1
- package/esm/Options/Classes/Particles/Move/MoveTrailFill.js +1 -1
- package/esm/Options/Classes/Particles/Move/Path/MovePath.js +2 -2
- package/esm/Options/Classes/Particles/Move/Spin.js +2 -2
- package/esm/Options/Classes/Particles/Number/ParticlesNumber.js +1 -1
- package/esm/Options/Classes/Particles/Opacity/Opacity.js +2 -2
- package/esm/Options/Classes/Particles/Opacity/OpacityAnimation.js +1 -1
- package/esm/Options/Classes/Particles/ParticlesOptions.js +12 -12
- package/esm/Options/Classes/Particles/Shadow.js +1 -1
- package/esm/Options/Classes/Particles/Shape/Shape.js +1 -1
- package/esm/Options/Classes/Particles/Size/Size.js +2 -2
- package/esm/Options/Classes/Particles/Size/SizeAnimation.js +1 -1
- package/esm/Options/Classes/Particles/Stroke.js +2 -2
- package/esm/Options/Classes/Particles/ZIndex/ZIndex.js +1 -1
- package/esm/Options/Classes/Responsive.js +1 -1
- package/esm/Options/Classes/Theme/Theme.js +2 -2
- package/esm/Options/Classes/ValueWithRandom.js +4 -4
- package/esm/Utils/CanvasUtils.js +1 -1
- package/esm/Utils/ColorUtils.js +2 -2
- package/esm/Utils/HslColorManager.js +2 -2
- package/esm/Utils/NumberUtils.js +2 -2
- package/esm/Utils/OptionsUtils.js +1 -1
- package/esm/Utils/RgbColorManager.js +1 -1
- package/esm/Utils/Utils.js +2 -2
- package/esm/bundle.js +2 -2
- package/esm/export-types.js +97 -97
- package/esm/exports.js +89 -89
- package/esm/index.js +4 -4
- package/esm/init.js +4 -4
- package/esm/package.json +1 -0
- package/package.json +6 -4
- package/report.html +2 -2
- package/tsparticles.engine.js +2 -2
- package/tsparticles.engine.min.js +1 -1
- package/tsparticles.engine.min.js.LICENSE.txt +1 -1
- package/types/Core/Canvas.d.ts +5 -5
- package/types/Core/Container.d.ts +12 -12
- package/types/Core/Engine.d.ts +20 -20
- package/types/Core/Interfaces/Colors.d.ts +2 -2
- package/types/Core/Interfaces/IBubbleParticleData.d.ts +1 -1
- package/types/Core/Interfaces/ICircleBouncer.d.ts +2 -2
- package/types/Core/Interfaces/IColorManager.d.ts +1 -1
- package/types/Core/Interfaces/IContainerInteractivity.d.ts +1 -1
- package/types/Core/Interfaces/IContainerPlugin.d.ts +7 -7
- package/types/Core/Interfaces/ICoordinates.d.ts +2 -2
- package/types/Core/Interfaces/IDimension.d.ts +1 -1
- package/types/Core/Interfaces/IDrawParticleParams.d.ts +6 -6
- package/types/Core/Interfaces/IExternalInteractor.d.ts +7 -7
- package/types/Core/Interfaces/IInteractor.d.ts +8 -8
- package/types/Core/Interfaces/ILoadParams.d.ts +2 -2
- package/types/Core/Interfaces/IMouseData.d.ts +1 -1
- package/types/Core/Interfaces/IMovePathGenerator.d.ts +4 -4
- package/types/Core/Interfaces/IParticle.d.ts +11 -11
- package/types/Core/Interfaces/IParticleHslAnimation.d.ts +1 -1
- package/types/Core/Interfaces/IParticleMover.d.ts +2 -2
- package/types/Core/Interfaces/IParticleRetinaProps.d.ts +1 -1
- package/types/Core/Interfaces/IParticleRoll.d.ts +1 -1
- package/types/Core/Interfaces/IParticleUpdater.d.ts +7 -7
- package/types/Core/Interfaces/IParticleValueAnimation.d.ts +1 -1
- package/types/Core/Interfaces/IParticlesInteractor.d.ts +3 -3
- package/types/Core/Interfaces/IPlugin.d.ts +5 -5
- package/types/Core/Interfaces/IPositionFromSizeParams.d.ts +2 -2
- package/types/Core/Interfaces/IShapeDrawer.d.ts +1 -1
- package/types/Core/Interfaces/IShapeValues.d.ts +2 -2
- package/types/Core/Interfaces/ITrailFillData.d.ts +1 -1
- package/types/Core/Particle.d.ts +21 -21
- package/types/Core/Particles.d.ts +12 -12
- package/types/Core/Retina.d.ts +2 -2
- package/types/Core/Utils/Circle.d.ts +2 -2
- package/types/Core/Utils/EventListeners.d.ts +1 -1
- package/types/Core/Utils/ExternalInteractorBase.d.ts +5 -5
- package/types/Core/Utils/InteractionManager.d.ts +5 -5
- package/types/Core/Utils/ParticlesInteractorBase.d.ts +5 -5
- package/types/Core/Utils/Point.d.ts +2 -2
- package/types/Core/Utils/QuadTree.d.ts +6 -6
- package/types/Core/Utils/Range.d.ts +1 -1
- package/types/Core/Utils/Rectangle.d.ts +3 -3
- package/types/Core/Utils/Vector.d.ts +2 -2
- package/types/Core/Utils/Vector3d.d.ts +1 -1
- package/types/Options/Classes/AnimatableColor.d.ts +6 -6
- package/types/Options/Classes/AnimationOptions.d.ts +6 -6
- package/types/Options/Classes/Background/Background.d.ts +4 -4
- package/types/Options/Classes/BackgroundMask/BackgroundMask.d.ts +4 -4
- package/types/Options/Classes/BackgroundMask/BackgroundMaskCover.d.ts +4 -4
- package/types/Options/Classes/ColorAnimation.d.ts +4 -4
- package/types/Options/Classes/FullScreen/FullScreen.d.ts +3 -3
- package/types/Options/Classes/HslAnimation.d.ts +4 -4
- package/types/Options/Classes/Interactivity/Events/ClickEvent.d.ts +5 -5
- package/types/Options/Classes/Interactivity/Events/DivEvent.d.ts +6 -6
- package/types/Options/Classes/Interactivity/Events/Events.d.ts +8 -8
- package/types/Options/Classes/Interactivity/Events/HoverEvent.d.ts +6 -6
- package/types/Options/Classes/Interactivity/Events/Parallax.d.ts +3 -3
- package/types/Options/Classes/Interactivity/Events/ResizeEvent.d.ts +3 -3
- package/types/Options/Classes/Interactivity/Interactivity.d.ts +8 -8
- package/types/Options/Classes/Interactivity/Modes/Modes.d.ts +5 -5
- package/types/Options/Classes/ManualParticle.d.ts +5 -5
- package/types/Options/Classes/Options.d.ts +15 -15
- package/types/Options/Classes/OptionsColor.d.ts +5 -5
- package/types/Options/Classes/Particles/Bounce/ParticlesBounce.d.ts +4 -4
- package/types/Options/Classes/Particles/Bounce/ParticlesBounceFactor.d.ts +1 -1
- package/types/Options/Classes/Particles/Collisions/Collisions.d.ts +8 -8
- package/types/Options/Classes/Particles/Collisions/CollisionsAbsorb.d.ts +3 -3
- package/types/Options/Classes/Particles/Collisions/CollisionsOverlap.d.ts +3 -3
- package/types/Options/Classes/Particles/Move/Move.d.ts +15 -15
- package/types/Options/Classes/Particles/Move/MoveAngle.d.ts +4 -4
- package/types/Options/Classes/Particles/Move/MoveAttract.d.ts +5 -5
- package/types/Options/Classes/Particles/Move/MoveCenter.d.ts +4 -4
- package/types/Options/Classes/Particles/Move/MoveGravity.d.ts +4 -4
- package/types/Options/Classes/Particles/Move/MoveTrail.d.ts +4 -4
- package/types/Options/Classes/Particles/Move/MoveTrailFill.d.ts +4 -4
- package/types/Options/Classes/Particles/Move/OutModes.d.ts +5 -5
- package/types/Options/Classes/Particles/Move/Path/MovePath.d.ts +5 -5
- package/types/Options/Classes/Particles/Move/Spin.d.ts +5 -5
- package/types/Options/Classes/Particles/Number/ParticlesDensity.d.ts +3 -3
- package/types/Options/Classes/Particles/Number/ParticlesNumber.d.ts +4 -4
- package/types/Options/Classes/Particles/Opacity/Opacity.d.ts +5 -5
- package/types/Options/Classes/Particles/Opacity/OpacityAnimation.d.ts +5 -5
- package/types/Options/Classes/Particles/ParticlesOptions.d.ts +19 -19
- package/types/Options/Classes/Particles/Shadow.d.ts +5 -5
- package/types/Options/Classes/Particles/Shape/Shape.d.ts +5 -5
- package/types/Options/Classes/Particles/Size/Size.d.ts +5 -5
- package/types/Options/Classes/Particles/Size/SizeAnimation.d.ts +5 -5
- package/types/Options/Classes/Particles/Stroke.d.ts +5 -5
- package/types/Options/Classes/Particles/ZIndex/ZIndex.d.ts +4 -4
- package/types/Options/Classes/Random.d.ts +3 -3
- package/types/Options/Classes/Responsive.d.ts +5 -5
- package/types/Options/Classes/Theme/Theme.d.ts +5 -5
- package/types/Options/Classes/Theme/ThemeDefault.d.ts +4 -4
- package/types/Options/Classes/ValueWithRandom.d.ts +6 -6
- package/types/Options/Interfaces/Background/IBackground.d.ts +1 -1
- package/types/Options/Interfaces/BackgroundMask/IBackgroundMask.d.ts +2 -2
- package/types/Options/Interfaces/BackgroundMask/IBackgroundMaskCover.d.ts +1 -1
- package/types/Options/Interfaces/IAnimatable.d.ts +1 -1
- package/types/Options/Interfaces/IAnimatableColor.d.ts +3 -3
- package/types/Options/Interfaces/IAnimation.d.ts +3 -3
- package/types/Options/Interfaces/IColorAnimation.d.ts +2 -2
- package/types/Options/Interfaces/IHslAnimation.d.ts +1 -1
- package/types/Options/Interfaces/IManualParticle.d.ts +3 -3
- package/types/Options/Interfaces/IOptionLoader.d.ts +1 -1
- package/types/Options/Interfaces/IOptions.d.ts +11 -11
- package/types/Options/Interfaces/IOptionsColor.d.ts +1 -1
- package/types/Options/Interfaces/IResponsive.d.ts +3 -3
- package/types/Options/Interfaces/IValueWithRandom.d.ts +3 -3
- package/types/Options/Interfaces/Interactivity/Events/IClickEvent.d.ts +2 -2
- package/types/Options/Interfaces/Interactivity/Events/IDivEvent.d.ts +3 -3
- package/types/Options/Interfaces/Interactivity/Events/IEvents.d.ts +5 -5
- package/types/Options/Interfaces/Interactivity/Events/IHoverEvent.d.ts +3 -3
- package/types/Options/Interfaces/Interactivity/IInteractivity.d.ts +3 -3
- package/types/Options/Interfaces/Interactivity/Modes/IModeDiv.d.ts +1 -1
- package/types/Options/Interfaces/Particles/Bounce/IParticlesBounce.d.ts +1 -1
- package/types/Options/Interfaces/Particles/Collisions/ICollisions.d.ts +5 -5
- package/types/Options/Interfaces/Particles/IParticlesOptions.d.ts +15 -15
- package/types/Options/Interfaces/Particles/IShadow.d.ts +2 -2
- package/types/Options/Interfaces/Particles/IStroke.d.ts +4 -4
- package/types/Options/Interfaces/Particles/Move/IMove.d.ts +12 -12
- package/types/Options/Interfaces/Particles/Move/IMoveAngle.d.ts +1 -1
- package/types/Options/Interfaces/Particles/Move/IMoveAttract.d.ts +2 -2
- package/types/Options/Interfaces/Particles/Move/IMoveCenter.d.ts +1 -1
- package/types/Options/Interfaces/Particles/Move/IMoveGravity.d.ts +1 -1
- package/types/Options/Interfaces/Particles/Move/IMoveTrail.d.ts +1 -1
- package/types/Options/Interfaces/Particles/Move/IMoveTrailFill.d.ts +1 -1
- package/types/Options/Interfaces/Particles/Move/IOutModes.d.ts +1 -1
- package/types/Options/Interfaces/Particles/Move/ISpin.d.ts +2 -2
- package/types/Options/Interfaces/Particles/Move/Path/IMovePath.d.ts +2 -2
- package/types/Options/Interfaces/Particles/Number/IParticlesNumber.d.ts +1 -1
- package/types/Options/Interfaces/Particles/Opacity/IOpacity.d.ts +2 -2
- package/types/Options/Interfaces/Particles/Opacity/IOpacityAnimation.d.ts +2 -2
- package/types/Options/Interfaces/Particles/Shape/IShape.d.ts +2 -2
- package/types/Options/Interfaces/Particles/Size/ISize.d.ts +2 -2
- package/types/Options/Interfaces/Particles/Size/ISizeAnimation.d.ts +2 -2
- package/types/Options/Interfaces/Particles/ZIndex/IZIndex.d.ts +1 -1
- package/types/Options/Interfaces/Theme/ITheme.d.ts +3 -3
- package/types/Options/Interfaces/Theme/IThemeDefault.d.ts +1 -1
- package/types/Types/CustomEventArgs.d.ts +1 -1
- package/types/Types/CustomEventListener.d.ts +1 -1
- package/types/Types/ISourceOptions.d.ts +2 -2
- package/types/Types/ParticlesGroups.d.ts +1 -1
- package/types/Types/RangeValue.d.ts +1 -1
- package/types/Types/ShapeData.d.ts +2 -2
- package/types/Types/ShapeDrawerFunctions.d.ts +3 -3
- package/types/Utils/CanvasUtils.d.ts +9 -9
- package/types/Utils/ColorUtils.d.ts +6 -6
- package/types/Utils/EventDispatcher.d.ts +2 -2
- package/types/Utils/HslColorManager.d.ts +2 -2
- package/types/Utils/NumberUtils.d.ts +8 -8
- package/types/Utils/OptionsUtils.d.ts +6 -6
- package/types/Utils/RgbColorManager.d.ts +2 -2
- package/types/Utils/Utils.d.ts +12 -12
- package/types/bundle.d.ts +2 -2
- package/types/export-types.d.ts +106 -106
- package/types/exports.d.ts +89 -89
- package/types/index.d.ts +3 -3
- package/types/init.d.ts +1 -1
- package/umd/Core/Canvas.js +29 -29
- package/umd/Core/Container.js +20 -20
- package/umd/Core/Engine.js +23 -23
- package/umd/Core/Particle.js +38 -38
- package/umd/Core/Particles.js +16 -16
- package/umd/Core/Retina.js +12 -12
- package/umd/Core/Utils/Circle.js +7 -7
- package/umd/Core/Utils/EventListeners.js +20 -20
- package/umd/Core/Utils/QuadTree.js +8 -8
- package/umd/Core/Utils/Rectangle.js +5 -5
- package/umd/Core/Utils/Vector.js +3 -3
- package/umd/Core/Utils/Vector3d.js +5 -5
- package/umd/Options/Classes/AnimatableColor.js +7 -7
- package/umd/Options/Classes/AnimationOptions.js +6 -6
- package/umd/Options/Classes/Background/Background.js +4 -4
- package/umd/Options/Classes/BackgroundMask/BackgroundMask.js +5 -5
- package/umd/Options/Classes/BackgroundMask/BackgroundMaskCover.js +4 -4
- package/umd/Options/Classes/ColorAnimation.js +7 -7
- package/umd/Options/Classes/HslAnimation.js +5 -5
- package/umd/Options/Classes/Interactivity/Events/Events.js +13 -13
- package/umd/Options/Classes/Interactivity/Events/HoverEvent.js +3 -3
- package/umd/Options/Classes/Interactivity/Interactivity.js +5 -5
- package/umd/Options/Classes/ManualParticle.js +3 -3
- package/umd/Options/Classes/Options.js +25 -25
- package/umd/Options/Classes/OptionsColor.js +3 -3
- package/umd/Options/Classes/Particles/Bounce/ParticlesBounce.js +4 -4
- package/umd/Options/Classes/Particles/Bounce/ParticlesBounceFactor.js +3 -3
- package/umd/Options/Classes/Particles/Collisions/Collisions.js +9 -9
- package/umd/Options/Classes/Particles/Move/Move.js +25 -25
- package/umd/Options/Classes/Particles/Move/MoveAngle.js +4 -4
- package/umd/Options/Classes/Particles/Move/MoveAttract.js +3 -3
- package/umd/Options/Classes/Particles/Move/MoveGravity.js +4 -4
- package/umd/Options/Classes/Particles/Move/MoveTrail.js +3 -3
- package/umd/Options/Classes/Particles/Move/MoveTrailFill.js +3 -3
- package/umd/Options/Classes/Particles/Move/Path/MovePath.js +5 -5
- package/umd/Options/Classes/Particles/Move/Spin.js +5 -5
- package/umd/Options/Classes/Particles/Number/ParticlesNumber.js +3 -3
- package/umd/Options/Classes/Particles/Opacity/Opacity.js +5 -5
- package/umd/Options/Classes/Particles/Opacity/OpacityAnimation.js +3 -3
- package/umd/Options/Classes/Particles/ParticlesOptions.js +29 -29
- package/umd/Options/Classes/Particles/Shadow.js +4 -4
- package/umd/Options/Classes/Particles/Shape/Shape.js +3 -3
- package/umd/Options/Classes/Particles/Size/Size.js +5 -5
- package/umd/Options/Classes/Particles/Size/SizeAnimation.js +3 -3
- package/umd/Options/Classes/Particles/Stroke.js +6 -6
- package/umd/Options/Classes/Particles/ZIndex/ZIndex.js +3 -3
- package/umd/Options/Classes/Responsive.js +3 -3
- package/umd/Options/Classes/Theme/Theme.js +5 -5
- package/umd/Options/Classes/ValueWithRandom.js +10 -10
- package/umd/Utils/CanvasUtils.js +3 -3
- package/umd/Utils/ColorUtils.js +24 -24
- package/umd/Utils/HslColorManager.js +10 -10
- package/umd/Utils/NumberUtils.js +11 -11
- package/umd/Utils/OptionsUtils.js +3 -3
- package/umd/Utils/RgbColorManager.js +6 -6
- package/umd/Utils/Utils.js +18 -18
- package/umd/bundle.js +4 -4
- package/umd/export-types.js +98 -98
- package/umd/exports.js +90 -90
- package/umd/index.js +7 -7
- package/umd/init.js +9 -9
package/umd/Core/Particle.js
CHANGED
|
@@ -4,23 +4,23 @@
|
|
|
4
4
|
if (v !== undefined) module.exports = v;
|
|
5
5
|
}
|
|
6
6
|
else if (typeof define === "function" && define.amd) {
|
|
7
|
-
define(["require", "exports", "../Utils/NumberUtils", "../Utils/Utils", "../Utils/ColorUtils", "../Options/Classes/Interactivity/Interactivity", "./Utils/Vector", "./Utils/Vector3d", "../Utils/CanvasUtils", "./Utils/Constants", "../Utils/OptionsUtils"], factory);
|
|
7
|
+
define(["require", "exports", "../Utils/NumberUtils.js", "../Utils/Utils.js", "../Utils/ColorUtils.js", "../Options/Classes/Interactivity/Interactivity.js", "./Utils/Vector.js", "./Utils/Vector3d.js", "../Utils/CanvasUtils.js", "./Utils/Constants.js", "../Utils/OptionsUtils.js"], factory);
|
|
8
8
|
}
|
|
9
9
|
})(function (require, exports) {
|
|
10
10
|
"use strict";
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.Particle = void 0;
|
|
13
|
-
const
|
|
14
|
-
const
|
|
15
|
-
const
|
|
16
|
-
const
|
|
17
|
-
const
|
|
18
|
-
const
|
|
19
|
-
const
|
|
20
|
-
const
|
|
21
|
-
const
|
|
13
|
+
const NumberUtils_js_1 = require("../Utils/NumberUtils.js");
|
|
14
|
+
const Utils_js_1 = require("../Utils/Utils.js");
|
|
15
|
+
const ColorUtils_js_1 = require("../Utils/ColorUtils.js");
|
|
16
|
+
const Interactivity_js_1 = require("../Options/Classes/Interactivity/Interactivity.js");
|
|
17
|
+
const Vector_js_1 = require("./Utils/Vector.js");
|
|
18
|
+
const Vector3d_js_1 = require("./Utils/Vector3d.js");
|
|
19
|
+
const CanvasUtils_js_1 = require("../Utils/CanvasUtils.js");
|
|
20
|
+
const Constants_js_1 = require("./Utils/Constants.js");
|
|
21
|
+
const OptionsUtils_js_1 = require("../Utils/OptionsUtils.js");
|
|
22
22
|
const fixOutMode = (data) => {
|
|
23
|
-
if (!(0,
|
|
23
|
+
if (!(0, Utils_js_1.isInArray)(data.outMode, data.checkModes)) {
|
|
24
24
|
return;
|
|
25
25
|
}
|
|
26
26
|
const diameter = data.radius * 2;
|
|
@@ -38,13 +38,13 @@
|
|
|
38
38
|
for (const [, plugin] of container.plugins) {
|
|
39
39
|
const pluginPos = plugin.particlePosition !== undefined ? plugin.particlePosition(position, this) : undefined;
|
|
40
40
|
if (pluginPos) {
|
|
41
|
-
return
|
|
41
|
+
return Vector3d_js_1.Vector3d.create(pluginPos.x, pluginPos.y, zIndex);
|
|
42
42
|
}
|
|
43
43
|
}
|
|
44
|
-
const canvasSize = container.canvas.size, exactPosition = (0,
|
|
44
|
+
const canvasSize = container.canvas.size, exactPosition = (0, NumberUtils_js_1.calcExactPositionOrRandomFromSize)({
|
|
45
45
|
size: canvasSize,
|
|
46
46
|
position: position,
|
|
47
|
-
}), pos =
|
|
47
|
+
}), pos = Vector3d_js_1.Vector3d.create(exactPosition.x, exactPosition.y, zIndex), radius = this.getRadius(), outModes = this.options.move.outModes, fixHorizontal = (outMode) => {
|
|
48
48
|
fixOutMode({
|
|
49
49
|
outMode,
|
|
50
50
|
checkModes: ["bounce", "bounce-horizontal"],
|
|
@@ -73,19 +73,19 @@
|
|
|
73
73
|
return pos;
|
|
74
74
|
};
|
|
75
75
|
this._calculateVelocity = () => {
|
|
76
|
-
const baseVelocity = (0,
|
|
76
|
+
const baseVelocity = (0, NumberUtils_js_1.getParticleBaseVelocity)(this.direction), res = baseVelocity.copy(), moveOptions = this.options.move;
|
|
77
77
|
if (moveOptions.direction === "inside" || moveOptions.direction === "outside") {
|
|
78
78
|
return res;
|
|
79
79
|
}
|
|
80
|
-
const rad = (Math.PI / 180) * (0,
|
|
80
|
+
const rad = (Math.PI / 180) * (0, NumberUtils_js_1.getRangeValue)(moveOptions.angle.value), radOffset = (Math.PI / 180) * (0, NumberUtils_js_1.getRangeValue)(moveOptions.angle.offset), range = {
|
|
81
81
|
left: radOffset - rad / 2,
|
|
82
82
|
right: radOffset + rad / 2,
|
|
83
83
|
};
|
|
84
84
|
if (!moveOptions.straight) {
|
|
85
|
-
res.angle += (0,
|
|
85
|
+
res.angle += (0, NumberUtils_js_1.randomInRange)((0, NumberUtils_js_1.setRangeValue)(range.left, range.right));
|
|
86
86
|
}
|
|
87
87
|
if (moveOptions.random && typeof moveOptions.speed === "number") {
|
|
88
|
-
res.length *= (0,
|
|
88
|
+
res.length *= (0, NumberUtils_js_1.getRandom)();
|
|
89
89
|
}
|
|
90
90
|
return res;
|
|
91
91
|
};
|
|
@@ -100,9 +100,9 @@
|
|
|
100
100
|
}
|
|
101
101
|
const retries = overlapOptions.retries;
|
|
102
102
|
if (retries >= 0 && tryCount > retries) {
|
|
103
|
-
throw new Error(`${
|
|
103
|
+
throw new Error(`${Constants_js_1.errorPrefix} particle is overlapping and can't be placed`);
|
|
104
104
|
}
|
|
105
|
-
return !!this.container.particles.find((particle) => (0,
|
|
105
|
+
return !!this.container.particles.find((particle) => (0, NumberUtils_js_1.getDistance)(pos, particle.position) < radius + particle.getRadius());
|
|
106
106
|
};
|
|
107
107
|
this._getRollColor = (color) => {
|
|
108
108
|
if (!color || !this.roll || (!this.backColor && !this.roll.alter)) {
|
|
@@ -116,21 +116,21 @@
|
|
|
116
116
|
return this.backColor;
|
|
117
117
|
}
|
|
118
118
|
if (this.roll.alter) {
|
|
119
|
-
return (0,
|
|
119
|
+
return (0, CanvasUtils_js_1.alterHsl)(color, this.roll.alter.type, this.roll.alter.value);
|
|
120
120
|
}
|
|
121
121
|
return color;
|
|
122
122
|
};
|
|
123
123
|
this._initPosition = (position) => {
|
|
124
|
-
const container = this.container, zIndexValue = (0,
|
|
125
|
-
this.position = this._calcPosition(container, position, (0,
|
|
124
|
+
const container = this.container, zIndexValue = (0, NumberUtils_js_1.getRangeValue)(this.options.zIndex.value);
|
|
125
|
+
this.position = this._calcPosition(container, position, (0, NumberUtils_js_1.clamp)(zIndexValue, 0, container.zLayers));
|
|
126
126
|
this.initialPosition = this.position.copy();
|
|
127
127
|
const canvasSize = container.canvas.size;
|
|
128
128
|
this.moveCenter = {
|
|
129
|
-
...(0,
|
|
129
|
+
...(0, Utils_js_1.getPosition)(this.options.move.center, canvasSize),
|
|
130
130
|
radius: this.options.move.center.radius ?? 0,
|
|
131
131
|
mode: this.options.move.center.mode ?? "percent",
|
|
132
132
|
};
|
|
133
|
-
this.direction = (0,
|
|
133
|
+
this.direction = (0, NumberUtils_js_1.getParticleDirectionAngle)(this.options.move.direction, this.position, this.moveCenter);
|
|
134
134
|
switch (this.options.move.direction) {
|
|
135
135
|
case "inside":
|
|
136
136
|
this.outType = "inside";
|
|
@@ -139,17 +139,17 @@
|
|
|
139
139
|
this.outType = "outside";
|
|
140
140
|
break;
|
|
141
141
|
}
|
|
142
|
-
this.offset =
|
|
142
|
+
this.offset = Vector_js_1.Vector.origin;
|
|
143
143
|
};
|
|
144
144
|
this._loadShapeData = (shapeOptions, reduceDuplicates) => {
|
|
145
145
|
const shapeData = shapeOptions.options[this.shape];
|
|
146
146
|
if (!shapeData) {
|
|
147
147
|
return;
|
|
148
148
|
}
|
|
149
|
-
return (0,
|
|
149
|
+
return (0, Utils_js_1.deepExtend)({
|
|
150
150
|
close: shapeOptions.close,
|
|
151
151
|
fill: shapeOptions.fill,
|
|
152
|
-
}, (0,
|
|
152
|
+
}, (0, Utils_js_1.itemFromSingleOrMultiple)(shapeData, this.id, reduceDuplicates));
|
|
153
153
|
};
|
|
154
154
|
this._engine = engine;
|
|
155
155
|
this.init(id, position, overrideOptions, group);
|
|
@@ -184,7 +184,7 @@
|
|
|
184
184
|
canvas.drawParticle(this, delta);
|
|
185
185
|
}
|
|
186
186
|
getFillColor() {
|
|
187
|
-
return this._getRollColor(this.bubble.color ?? (0,
|
|
187
|
+
return this._getRollColor(this.bubble.color ?? (0, ColorUtils_js_1.getHslFromAnimation)(this.color));
|
|
188
188
|
}
|
|
189
189
|
getMass() {
|
|
190
190
|
return (this.getRadius() ** 2 * Math.PI) / 2;
|
|
@@ -200,7 +200,7 @@
|
|
|
200
200
|
return this.bubble.radius ?? this.size.value;
|
|
201
201
|
}
|
|
202
202
|
getStrokeColor() {
|
|
203
|
-
return this._getRollColor(this.bubble.color ?? (0,
|
|
203
|
+
return this._getRollColor(this.bubble.color ?? (0, ColorUtils_js_1.getHslFromAnimation)(this.strokeColor));
|
|
204
204
|
}
|
|
205
205
|
init(id, position, overrideOptions, group) {
|
|
206
206
|
const container = this.container, engine = this._engine;
|
|
@@ -219,11 +219,11 @@
|
|
|
219
219
|
};
|
|
220
220
|
this.outType = "normal";
|
|
221
221
|
this.ignoresResizeRatio = true;
|
|
222
|
-
const pxRatio = container.retina.pixelRatio, mainOptions = container.actualOptions, particlesOptions = (0,
|
|
223
|
-
this.shape = (0,
|
|
222
|
+
const pxRatio = container.retina.pixelRatio, mainOptions = container.actualOptions, particlesOptions = (0, OptionsUtils_js_1.loadParticlesOptions)(this._engine, container, mainOptions.particles), shapeType = particlesOptions.shape.type, { reduceDuplicates } = particlesOptions;
|
|
223
|
+
this.shape = (0, Utils_js_1.itemFromSingleOrMultiple)(shapeType, this.id, reduceDuplicates);
|
|
224
224
|
const shapeOptions = particlesOptions.shape;
|
|
225
225
|
if (overrideOptions && overrideOptions.shape && overrideOptions.shape.type) {
|
|
226
|
-
const overrideShapeType = overrideOptions.shape.type, shape = (0,
|
|
226
|
+
const overrideShapeType = overrideOptions.shape.type, shape = (0, Utils_js_1.itemFromSingleOrMultiple)(overrideShapeType, this.id, reduceDuplicates);
|
|
227
227
|
if (shape) {
|
|
228
228
|
this.shape = shape;
|
|
229
229
|
shapeOptions.load(overrideOptions.shape);
|
|
@@ -235,7 +235,7 @@
|
|
|
235
235
|
if (shapeData) {
|
|
236
236
|
particlesOptions.load(shapeData.particles);
|
|
237
237
|
}
|
|
238
|
-
const interactivity = new
|
|
238
|
+
const interactivity = new Interactivity_js_1.Interactivity(engine, container);
|
|
239
239
|
interactivity.load(container.actualOptions.interactivity);
|
|
240
240
|
interactivity.load(particlesOptions.interactivity);
|
|
241
241
|
this.interactivity = interactivity;
|
|
@@ -243,7 +243,7 @@
|
|
|
243
243
|
this.close = shapeData?.close ?? particlesOptions.shape.close;
|
|
244
244
|
this.options = particlesOptions;
|
|
245
245
|
const pathOptions = this.options.move.path;
|
|
246
|
-
this.pathDelay = (0,
|
|
246
|
+
this.pathDelay = (0, NumberUtils_js_1.getValue)(pathOptions.delay) * 1000;
|
|
247
247
|
if (pathOptions.generator) {
|
|
248
248
|
this.pathGenerator = this._engine.getPathGenerator(pathOptions.generator);
|
|
249
249
|
if (this.pathGenerator && container.addPath(pathOptions.generator, this.pathGenerator)) {
|
|
@@ -251,7 +251,7 @@
|
|
|
251
251
|
}
|
|
252
252
|
}
|
|
253
253
|
container.retina.initParticle(this);
|
|
254
|
-
this.size = (0,
|
|
254
|
+
this.size = (0, Utils_js_1.initParticleNumericAnimationValue)(this.options.size, pxRatio);
|
|
255
255
|
this.bubble = {
|
|
256
256
|
inRange: false,
|
|
257
257
|
};
|
|
@@ -262,7 +262,7 @@
|
|
|
262
262
|
this._initPosition(position);
|
|
263
263
|
this.initialVelocity = this._calculateVelocity();
|
|
264
264
|
this.velocity = this.initialVelocity.copy();
|
|
265
|
-
this.moveDecay = 1 - (0,
|
|
265
|
+
this.moveDecay = 1 - (0, NumberUtils_js_1.getRangeValue)(this.options.move.decay);
|
|
266
266
|
const particles = container.particles;
|
|
267
267
|
particles.needsSort = particles.needsSort || particles.lastZIndex < this.position.z;
|
|
268
268
|
particles.lastZIndex = this.position.z;
|
|
@@ -283,7 +283,7 @@
|
|
|
283
283
|
this.sides = sideCountFunc(this);
|
|
284
284
|
}
|
|
285
285
|
this.spawning = false;
|
|
286
|
-
this.shadowColor = (0,
|
|
286
|
+
this.shadowColor = (0, ColorUtils_js_1.rangeColorToRgb)(this.options.shadow.color);
|
|
287
287
|
for (const updater of container.particles.updaters) {
|
|
288
288
|
updater.init(this);
|
|
289
289
|
}
|
package/umd/Core/Particles.js
CHANGED
|
@@ -4,22 +4,22 @@
|
|
|
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", "./Utils/InteractionManager", "./Particle", "./Utils/Point", "./Utils/QuadTree", "./Utils/Rectangle", "./Utils/Constants"], factory);
|
|
7
|
+
define(["require", "exports", "../Utils/Utils.js", "./Utils/InteractionManager.js", "./Particle.js", "./Utils/Point.js", "./Utils/QuadTree.js", "./Utils/Rectangle.js", "./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.Particles = void 0;
|
|
13
|
-
const
|
|
14
|
-
const
|
|
15
|
-
const
|
|
16
|
-
const
|
|
17
|
-
const
|
|
18
|
-
const
|
|
19
|
-
const
|
|
13
|
+
const Utils_js_1 = require("../Utils/Utils.js");
|
|
14
|
+
const InteractionManager_js_1 = require("./Utils/InteractionManager.js");
|
|
15
|
+
const Particle_js_1 = require("./Particle.js");
|
|
16
|
+
const Point_js_1 = require("./Utils/Point.js");
|
|
17
|
+
const QuadTree_js_1 = require("./Utils/QuadTree.js");
|
|
18
|
+
const Rectangle_js_1 = require("./Utils/Rectangle.js");
|
|
19
|
+
const Constants_js_1 = require("./Utils/Constants.js");
|
|
20
20
|
const qTreeCapacity = 4;
|
|
21
21
|
const qTreeRectangle = (canvasSize) => {
|
|
22
|
-
return new
|
|
22
|
+
return new Rectangle_js_1.Rectangle(-canvasSize.width / 4, -canvasSize.height / 4, (canvasSize.width * 3) / 2, (canvasSize.height * 3) / 2);
|
|
23
23
|
};
|
|
24
24
|
class Particles {
|
|
25
25
|
constructor(engine, container) {
|
|
@@ -51,7 +51,7 @@
|
|
|
51
51
|
particle.init(this._nextId, position, overrideOptions, group);
|
|
52
52
|
}
|
|
53
53
|
else {
|
|
54
|
-
particle = new
|
|
54
|
+
particle = new Particle_js_1.Particle(this._engine, this._nextId, this._container, position, overrideOptions, group);
|
|
55
55
|
}
|
|
56
56
|
let canAdd = true;
|
|
57
57
|
if (initializer) {
|
|
@@ -72,7 +72,7 @@
|
|
|
72
72
|
return particle;
|
|
73
73
|
}
|
|
74
74
|
catch (e) {
|
|
75
|
-
(0,
|
|
75
|
+
(0, Utils_js_1.getLogger)().warning(`${Constants_js_1.errorPrefix} adding particle: ${e}`);
|
|
76
76
|
return;
|
|
77
77
|
}
|
|
78
78
|
};
|
|
@@ -102,9 +102,9 @@
|
|
|
102
102
|
this.limit = 0;
|
|
103
103
|
this.needsSort = false;
|
|
104
104
|
this.lastZIndex = 0;
|
|
105
|
-
this._interactionManager = new
|
|
105
|
+
this._interactionManager = new InteractionManager_js_1.InteractionManager(engine, container);
|
|
106
106
|
const canvasSize = container.canvas.size;
|
|
107
|
-
this.quadTree = new
|
|
107
|
+
this.quadTree = new QuadTree_js_1.QuadTree(qTreeRectangle(canvasSize), qTreeCapacity);
|
|
108
108
|
this.movers = this._engine.getMovers(container, true);
|
|
109
109
|
this.updaters = this._engine.getUpdaters(container, true);
|
|
110
110
|
}
|
|
@@ -114,7 +114,7 @@
|
|
|
114
114
|
addManualParticles() {
|
|
115
115
|
const container = this._container, options = container.actualOptions;
|
|
116
116
|
for (const particle of options.manualParticles) {
|
|
117
|
-
this.addParticle(particle.position ? (0,
|
|
117
|
+
this.addParticle(particle.position ? (0, Utils_js_1.getPosition)(particle.position, container.canvas.size) : undefined, particle.options);
|
|
118
118
|
}
|
|
119
119
|
}
|
|
120
120
|
addParticle(position, overrideOptions, group, initializer) {
|
|
@@ -230,7 +230,7 @@
|
|
|
230
230
|
}
|
|
231
231
|
async update(delta) {
|
|
232
232
|
const container = this._container, particlesToDelete = new Set();
|
|
233
|
-
this.quadTree = new
|
|
233
|
+
this.quadTree = new QuadTree_js_1.QuadTree(qTreeRectangle(container.canvas.size), qTreeCapacity);
|
|
234
234
|
for (const [, pathGenerator] of container.pathGenerators) {
|
|
235
235
|
pathGenerator.update();
|
|
236
236
|
}
|
|
@@ -260,7 +260,7 @@
|
|
|
260
260
|
particlesToDelete.add(particle);
|
|
261
261
|
continue;
|
|
262
262
|
}
|
|
263
|
-
this.quadTree.insert(new
|
|
263
|
+
this.quadTree.insert(new Point_js_1.Point(particle.getPosition(), particle));
|
|
264
264
|
}
|
|
265
265
|
if (particlesToDelete.size) {
|
|
266
266
|
const checkDelete = (p) => !particlesToDelete.has(p);
|
package/umd/Core/Retina.js
CHANGED
|
@@ -4,14 +4,14 @@
|
|
|
4
4
|
if (v !== undefined) module.exports = v;
|
|
5
5
|
}
|
|
6
6
|
else if (typeof define === "function" && define.amd) {
|
|
7
|
-
define(["require", "exports", "../Utils/NumberUtils", "../Utils/Utils"], factory);
|
|
7
|
+
define(["require", "exports", "../Utils/NumberUtils.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.Retina = void 0;
|
|
13
|
-
const
|
|
14
|
-
const
|
|
13
|
+
const NumberUtils_js_1 = require("../Utils/NumberUtils.js");
|
|
14
|
+
const Utils_js_1 = require("../Utils/Utils.js");
|
|
15
15
|
class Retina {
|
|
16
16
|
constructor(container) {
|
|
17
17
|
this.container = container;
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
}
|
|
21
21
|
init() {
|
|
22
22
|
const container = this.container, options = container.actualOptions;
|
|
23
|
-
this.pixelRatio = !options.detectRetina || (0,
|
|
23
|
+
this.pixelRatio = !options.detectRetina || (0, Utils_js_1.isSsr)() ? 1 : window.devicePixelRatio;
|
|
24
24
|
this.reduceFactor = 1;
|
|
25
25
|
const ratio = this.pixelRatio, canvas = container.canvas;
|
|
26
26
|
if (canvas.element) {
|
|
@@ -29,20 +29,20 @@
|
|
|
29
29
|
canvas.size.height = element.offsetHeight * ratio;
|
|
30
30
|
}
|
|
31
31
|
const particles = options.particles, moveOptions = particles.move;
|
|
32
|
-
this.attractDistance = (0,
|
|
33
|
-
this.maxSpeed = (0,
|
|
34
|
-
this.sizeAnimationSpeed = (0,
|
|
32
|
+
this.attractDistance = (0, NumberUtils_js_1.getRangeValue)(moveOptions.attract.distance) * ratio;
|
|
33
|
+
this.maxSpeed = (0, NumberUtils_js_1.getRangeValue)(moveOptions.gravity.maxSpeed) * ratio;
|
|
34
|
+
this.sizeAnimationSpeed = (0, NumberUtils_js_1.getRangeValue)(particles.size.animation.speed) * ratio;
|
|
35
35
|
}
|
|
36
36
|
initParticle(particle) {
|
|
37
37
|
const options = particle.options, ratio = this.pixelRatio, moveOptions = options.move, moveDistance = moveOptions.distance, props = particle.retina;
|
|
38
|
-
props.attractDistance = (0,
|
|
39
|
-
props.moveDrift = (0,
|
|
40
|
-
props.moveSpeed = (0,
|
|
41
|
-
props.sizeAnimationSpeed = (0,
|
|
38
|
+
props.attractDistance = (0, NumberUtils_js_1.getRangeValue)(moveOptions.attract.distance) * ratio;
|
|
39
|
+
props.moveDrift = (0, NumberUtils_js_1.getRangeValue)(moveOptions.drift) * ratio;
|
|
40
|
+
props.moveSpeed = (0, NumberUtils_js_1.getRangeValue)(moveOptions.speed) * ratio;
|
|
41
|
+
props.sizeAnimationSpeed = (0, NumberUtils_js_1.getRangeValue)(options.size.animation.speed) * ratio;
|
|
42
42
|
const maxDistance = props.maxDistance;
|
|
43
43
|
maxDistance.horizontal = moveDistance.horizontal !== undefined ? moveDistance.horizontal * ratio : undefined;
|
|
44
44
|
maxDistance.vertical = moveDistance.vertical !== undefined ? moveDistance.vertical * ratio : undefined;
|
|
45
|
-
props.maxSpeed = (0,
|
|
45
|
+
props.maxSpeed = (0, NumberUtils_js_1.getRangeValue)(moveOptions.gravity.maxSpeed) * ratio;
|
|
46
46
|
}
|
|
47
47
|
}
|
|
48
48
|
exports.Retina = Retina;
|
package/umd/Core/Utils/Circle.js
CHANGED
|
@@ -4,22 +4,22 @@
|
|
|
4
4
|
if (v !== undefined) module.exports = v;
|
|
5
5
|
}
|
|
6
6
|
else if (typeof define === "function" && define.amd) {
|
|
7
|
-
define(["require", "exports", "./Range", "./Rectangle", "../../Utils/NumberUtils"], factory);
|
|
7
|
+
define(["require", "exports", "./Range.js", "./Rectangle.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.Circle = void 0;
|
|
13
|
-
const
|
|
14
|
-
const
|
|
15
|
-
const
|
|
16
|
-
class Circle extends
|
|
13
|
+
const Range_js_1 = require("./Range.js");
|
|
14
|
+
const Rectangle_js_1 = require("./Rectangle.js");
|
|
15
|
+
const NumberUtils_js_1 = require("../../Utils/NumberUtils.js");
|
|
16
|
+
class Circle extends Range_js_1.Range {
|
|
17
17
|
constructor(x, y, radius) {
|
|
18
18
|
super(x, y);
|
|
19
19
|
this.radius = radius;
|
|
20
20
|
}
|
|
21
21
|
contains(point) {
|
|
22
|
-
return (0,
|
|
22
|
+
return (0, NumberUtils_js_1.getDistance)(point, this.position) <= this.radius;
|
|
23
23
|
}
|
|
24
24
|
intersects(range) {
|
|
25
25
|
const pos1 = this.position, pos2 = range.position, distPos = { x: Math.abs(pos2.x - pos1.x), y: Math.abs(pos2.y - pos1.y) }, r = this.radius;
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
const rSum = r + range.radius, dist = Math.sqrt(distPos.x ** 2 + distPos.y ** 2);
|
|
28
28
|
return rSum > dist;
|
|
29
29
|
}
|
|
30
|
-
else if (range instanceof
|
|
30
|
+
else if (range instanceof Rectangle_js_1.Rectangle) {
|
|
31
31
|
const { width, height } = range.size, edges = Math.pow(distPos.x - width, 2) + Math.pow(distPos.y - height, 2);
|
|
32
32
|
return (edges <= r ** 2 ||
|
|
33
33
|
(distPos.x <= r + width && distPos.y <= r + height) ||
|
|
@@ -4,18 +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", "../../Utils/Utils", "./Constants"], factory);
|
|
7
|
+
define(["require", "exports", "../../Utils/Utils.js", "./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.EventListeners = void 0;
|
|
13
|
-
const
|
|
14
|
-
const
|
|
13
|
+
const Utils_js_1 = require("../../Utils/Utils.js");
|
|
14
|
+
const Constants_js_1 = require("./Constants.js");
|
|
15
15
|
function manageListener(element, event, handler, add, options) {
|
|
16
16
|
if (add) {
|
|
17
17
|
let addOptions = { passive: true };
|
|
18
|
-
if ((0,
|
|
18
|
+
if ((0, Utils_js_1.isBoolean)(options)) {
|
|
19
19
|
addOptions.capture = options;
|
|
20
20
|
}
|
|
21
21
|
else if (options !== undefined) {
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
mouseInteractivity.clickPosition = { ...mousePos };
|
|
42
42
|
mouseInteractivity.clickTime = new Date().getTime();
|
|
43
43
|
const onClick = options.interactivity.events.onClick;
|
|
44
|
-
(0,
|
|
44
|
+
(0, Utils_js_1.executeOnSingleOrMultiple)(onClick.mode, (mode) => this.container.handleClickMode(mode));
|
|
45
45
|
}
|
|
46
46
|
if (e.type === "touchend") {
|
|
47
47
|
setTimeout(() => this._mouseTouchFinish(), 500);
|
|
@@ -96,26 +96,26 @@
|
|
|
96
96
|
if (!(options.interactivity.events.onHover.enable || options.interactivity.events.onClick.enable)) {
|
|
97
97
|
return;
|
|
98
98
|
}
|
|
99
|
-
manageListener(interactivityEl,
|
|
100
|
-
manageListener(interactivityEl,
|
|
101
|
-
manageListener(interactivityEl,
|
|
99
|
+
manageListener(interactivityEl, Constants_js_1.mouseMoveEvent, handlers.mouseMove, add);
|
|
100
|
+
manageListener(interactivityEl, Constants_js_1.touchStartEvent, handlers.touchStart, add);
|
|
101
|
+
manageListener(interactivityEl, Constants_js_1.touchMoveEvent, handlers.touchMove, add);
|
|
102
102
|
if (!options.interactivity.events.onClick.enable) {
|
|
103
|
-
manageListener(interactivityEl,
|
|
103
|
+
manageListener(interactivityEl, Constants_js_1.touchEndEvent, handlers.touchEnd, add);
|
|
104
104
|
}
|
|
105
105
|
else {
|
|
106
|
-
manageListener(interactivityEl,
|
|
107
|
-
manageListener(interactivityEl,
|
|
108
|
-
manageListener(interactivityEl,
|
|
106
|
+
manageListener(interactivityEl, Constants_js_1.touchEndEvent, handlers.touchEndClick, add);
|
|
107
|
+
manageListener(interactivityEl, Constants_js_1.mouseUpEvent, handlers.mouseUp, add);
|
|
108
|
+
manageListener(interactivityEl, Constants_js_1.mouseDownEvent, handlers.mouseDown, add);
|
|
109
109
|
}
|
|
110
110
|
manageListener(interactivityEl, mouseLeaveTmpEvent, handlers.mouseLeave, add);
|
|
111
|
-
manageListener(interactivityEl,
|
|
111
|
+
manageListener(interactivityEl, Constants_js_1.touchCancelEvent, handlers.touchCancel, add);
|
|
112
112
|
};
|
|
113
113
|
this._manageListeners = (add) => {
|
|
114
114
|
const handlers = this._handlers, container = this.container, options = container.actualOptions, detectType = options.interactivity.detectsOn, canvasEl = container.canvas.element;
|
|
115
|
-
let mouseLeaveTmpEvent =
|
|
115
|
+
let mouseLeaveTmpEvent = Constants_js_1.mouseLeaveEvent;
|
|
116
116
|
if (detectType === "window") {
|
|
117
117
|
container.interactivity.element = window;
|
|
118
|
-
mouseLeaveTmpEvent =
|
|
118
|
+
mouseLeaveTmpEvent = Constants_js_1.mouseOutEvent;
|
|
119
119
|
}
|
|
120
120
|
else if (detectType === "parent" && canvasEl) {
|
|
121
121
|
container.interactivity.element = canvasEl.parentElement ?? canvasEl.parentNode;
|
|
@@ -127,11 +127,11 @@
|
|
|
127
127
|
this._manageResize(add);
|
|
128
128
|
this._manageInteractivityListeners(mouseLeaveTmpEvent, add);
|
|
129
129
|
if (document) {
|
|
130
|
-
manageListener(document,
|
|
130
|
+
manageListener(document, Constants_js_1.visibilityChangeEvent, handlers.visibilityChange, add, false);
|
|
131
131
|
}
|
|
132
132
|
};
|
|
133
133
|
this._manageMediaMatch = (add) => {
|
|
134
|
-
const handlers = this._handlers, mediaMatch = (0,
|
|
134
|
+
const handlers = this._handlers, mediaMatch = (0, Utils_js_1.safeMatchMedia)("(prefers-color-scheme: dark)");
|
|
135
135
|
if (!mediaMatch) {
|
|
136
136
|
return;
|
|
137
137
|
}
|
|
@@ -155,7 +155,7 @@
|
|
|
155
155
|
return;
|
|
156
156
|
}
|
|
157
157
|
if (typeof ResizeObserver === "undefined") {
|
|
158
|
-
manageListener(window,
|
|
158
|
+
manageListener(window, Constants_js_1.resizeEvent, handlers.resize, add);
|
|
159
159
|
return;
|
|
160
160
|
}
|
|
161
161
|
const canvasEl = container.canvas.element;
|
|
@@ -217,7 +217,7 @@
|
|
|
217
217
|
delete mouse.position;
|
|
218
218
|
delete mouse.clickPosition;
|
|
219
219
|
delete mouse.downPosition;
|
|
220
|
-
interactivity.status =
|
|
220
|
+
interactivity.status = Constants_js_1.mouseLeaveEvent;
|
|
221
221
|
mouse.inside = false;
|
|
222
222
|
mouse.clicking = false;
|
|
223
223
|
};
|
|
@@ -279,7 +279,7 @@
|
|
|
279
279
|
pos.y *= pxRatio;
|
|
280
280
|
}
|
|
281
281
|
interactivity.mouse.position = pos;
|
|
282
|
-
interactivity.status =
|
|
282
|
+
interactivity.status = Constants_js_1.mouseMoveEvent;
|
|
283
283
|
};
|
|
284
284
|
this._touchEnd = (e) => {
|
|
285
285
|
const evt = e, touches = Array.from(evt.changedTouches);
|
|
@@ -4,15 +4,15 @@
|
|
|
4
4
|
if (v !== undefined) module.exports = v;
|
|
5
5
|
}
|
|
6
6
|
else if (typeof define === "function" && define.amd) {
|
|
7
|
-
define(["require", "exports", "./Circle", "./Rectangle", "../../Utils/NumberUtils"], factory);
|
|
7
|
+
define(["require", "exports", "./Circle.js", "./Rectangle.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.QuadTree = void 0;
|
|
13
|
-
const
|
|
14
|
-
const
|
|
15
|
-
const
|
|
13
|
+
const Circle_js_1 = require("./Circle.js");
|
|
14
|
+
const Rectangle_js_1 = require("./Rectangle.js");
|
|
15
|
+
const NumberUtils_js_1 = require("../../Utils/NumberUtils.js");
|
|
16
16
|
class QuadTree {
|
|
17
17
|
constructor(rectangle, capacity) {
|
|
18
18
|
this.rectangle = rectangle;
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
this._subdivide = () => {
|
|
21
21
|
const { x, y } = this.rectangle.position, { width, height } = this.rectangle.size, { capacity } = this;
|
|
22
22
|
for (let i = 0; i < 4; i++) {
|
|
23
|
-
this._subs.push(new QuadTree(new
|
|
23
|
+
this._subs.push(new QuadTree(new Rectangle_js_1.Rectangle(x + (width / 2) * (i % 2), y + (height / 2) * (Math.round(i / 2) - (i % 2)), width / 2, height / 2), capacity));
|
|
24
24
|
}
|
|
25
25
|
this._divided = true;
|
|
26
26
|
};
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
}
|
|
49
49
|
for (const p of this._points) {
|
|
50
50
|
if (!range.contains(p.position) &&
|
|
51
|
-
(0,
|
|
51
|
+
(0, NumberUtils_js_1.getDistance)(range.position, p.position) > p.particle.getRadius() &&
|
|
52
52
|
(!check || check(p.particle))) {
|
|
53
53
|
continue;
|
|
54
54
|
}
|
|
@@ -62,10 +62,10 @@
|
|
|
62
62
|
return res;
|
|
63
63
|
}
|
|
64
64
|
queryCircle(position, radius, check) {
|
|
65
|
-
return this.query(new
|
|
65
|
+
return this.query(new Circle_js_1.Circle(position.x, position.y, radius), check);
|
|
66
66
|
}
|
|
67
67
|
queryRectangle(position, size, check) {
|
|
68
|
-
return this.query(new
|
|
68
|
+
return this.query(new Rectangle_js_1.Rectangle(position.x, position.y, size.width, size.height), check);
|
|
69
69
|
}
|
|
70
70
|
}
|
|
71
71
|
exports.QuadTree = QuadTree;
|
|
@@ -4,15 +4,15 @@
|
|
|
4
4
|
if (v !== undefined) module.exports = v;
|
|
5
5
|
}
|
|
6
6
|
else if (typeof define === "function" && define.amd) {
|
|
7
|
-
define(["require", "exports", "./Circle", "./Range"], factory);
|
|
7
|
+
define(["require", "exports", "./Circle.js", "./Range.js"], factory);
|
|
8
8
|
}
|
|
9
9
|
})(function (require, exports) {
|
|
10
10
|
"use strict";
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.Rectangle = void 0;
|
|
13
|
-
const
|
|
14
|
-
const
|
|
15
|
-
class Rectangle extends
|
|
13
|
+
const Circle_js_1 = require("./Circle.js");
|
|
14
|
+
const Range_js_1 = require("./Range.js");
|
|
15
|
+
class Rectangle extends Range_js_1.Range {
|
|
16
16
|
constructor(x, y, width, height) {
|
|
17
17
|
super(x, y);
|
|
18
18
|
this.size = {
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
return point.x >= pos.x && point.x <= pos.x + w && point.y >= pos.y && point.y <= pos.y + h;
|
|
26
26
|
}
|
|
27
27
|
intersects(range) {
|
|
28
|
-
if (range instanceof
|
|
28
|
+
if (range instanceof Circle_js_1.Circle) {
|
|
29
29
|
range.intersects(this);
|
|
30
30
|
}
|
|
31
31
|
const w = this.size.width, h = this.size.height, pos1 = this.position, pos2 = range.position, size2 = range instanceof Rectangle ? range.size : { width: 0, height: 0 }, w2 = size2.width, h2 = size2.height;
|
package/umd/Core/Utils/Vector.js
CHANGED
|
@@ -4,14 +4,14 @@
|
|
|
4
4
|
if (v !== undefined) module.exports = v;
|
|
5
5
|
}
|
|
6
6
|
else if (typeof define === "function" && define.amd) {
|
|
7
|
-
define(["require", "exports", "./Vector3d"], factory);
|
|
7
|
+
define(["require", "exports", "./Vector3d.js"], factory);
|
|
8
8
|
}
|
|
9
9
|
})(function (require, exports) {
|
|
10
10
|
"use strict";
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.Vector = void 0;
|
|
13
|
-
const
|
|
14
|
-
class Vector extends
|
|
13
|
+
const Vector3d_js_1 = require("./Vector3d.js");
|
|
14
|
+
class Vector extends Vector3d_js_1.Vector3d {
|
|
15
15
|
constructor(xOrCoords, y) {
|
|
16
16
|
super(xOrCoords, y, 0);
|
|
17
17
|
}
|