@tsparticles/all 4.0.0-beta.1 → 4.0.0-beta.3
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/1030.min.js +1 -1
- package/1051.min.js +1 -1
- package/1061.min.js +1 -1
- package/1089.min.js +1 -1
- package/1120.min.js +1 -1
- package/1160.min.js +1 -1
- package/1167.min.js +1 -1
- package/117.min.js +1 -1
- package/1201.min.js +1 -1
- package/1255.min.js +1 -1
- package/143.min.js +1 -1
- package/1510.min.js +1 -1
- package/1661.min.js +1 -1
- package/1707.min.js +2 -2
- package/1767.min.js +1 -1
- package/1841.min.js +1 -1
- package/1860.min.js +1 -1
- package/2004.min.js +1 -1
- package/2093.min.js +1 -1
- package/2158.min.js +1 -1
- package/2177.min.js +1 -1
- package/2253.min.js +1 -1
- package/2261.min.js +1 -1
- package/2265.min.js +1 -1
- package/2405.min.js +1 -1
- package/2413.min.js +1 -1
- package/2425.min.js +1 -1
- package/2429.min.js +1 -1
- package/2454.min.js +1 -1
- package/264.min.js +1 -1
- package/2643.min.js +1 -1
- package/2784.min.js +1 -1
- package/2866.min.js +1 -1
- package/2908.min.js +1 -1
- package/2930.min.js +1 -1
- package/2964.min.js +1 -1
- package/2971.min.js +1 -1
- package/2975.min.js +1 -1
- package/301.min.js +1 -1
- package/3041.min.js +1 -1
- package/3089.min.js +1 -1
- package/31.min.js +1 -1
- package/3152.min.js +1 -1
- package/3210.min.js +1 -1
- package/3248.min.js +1 -1
- package/3256.min.js +1 -1
- package/3285.min.js +1 -1
- package/3323.min.js +1 -1
- package/3471.min.js +1 -1
- package/3693.min.js +1 -1
- package/370.min.js +1 -1
- package/3719.min.js +1 -1
- package/3737.min.js +1 -1
- package/3775.min.js +1 -1
- package/3875.min.js +1 -1
- package/3895.min.js +1 -1
- package/3949.min.js +1 -1
- package/3983.min.js +1 -1
- package/4051.min.js +1 -1
- package/4075.min.js +1 -1
- package/4088.min.js +1 -1
- package/410.min.js +1 -1
- package/4117.min.js +1 -1
- package/4129.min.js +1 -1
- package/4159.min.js +1 -1
- package/4191.min.js +1 -1
- package/4198.min.js +1 -1
- package/4301.min.js +1 -1
- package/4306.min.js +1 -1
- package/4316.min.js +1 -1
- package/4473.min.js +1 -1
- package/4489.min.js +1 -1
- package/4537.min.js +1 -1
- package/4567.min.js +1 -1
- package/4592.min.js +1 -1
- package/4601.min.js +1 -1
- package/4701.min.js +1 -1
- package/4722.min.js +1 -1
- package/4837.min.js +1 -1
- package/4839.min.js +1 -1
- package/4880.min.js +1 -1
- package/4887.min.js +1 -1
- package/4952.min.js +1 -1
- package/4991.min.js +1 -1
- package/5055.min.js +1 -1
- package/5077.min.js +1 -1
- package/5095.min.js +1 -1
- package/5136.min.js +1 -1
- package/5174.min.js +1 -1
- package/5232.min.js +1 -1
- package/5260.min.js +1 -1
- package/5264.min.js +1 -1
- package/5275.min.js +1 -1
- package/5313.min.js +1 -1
- package/5325.min.js +1 -1
- package/5347.min.js +1 -1
- package/5437.min.js +1 -1
- package/5447.min.js +1 -1
- package/5453.min.js +1 -1
- package/5589.min.js +1 -1
- package/5602.min.js +1 -1
- package/561.min.js +1 -1
- package/5669.min.js +1 -1
- package/5686.min.js +1 -1
- package/5694.min.js +1 -1
- package/5700.min.js +1 -1
- package/5719.min.js +1 -1
- package/5732.min.js +1 -1
- package/5816.min.js +1 -1
- package/5832.min.js +1 -1
- package/587.min.js +1 -1
- package/6055.min.js +1 -1
- package/6056.min.js +1 -1
- package/607.min.js +1 -1
- package/6130.min.js +1 -1
- package/6222.min.js +1 -1
- package/6227.min.js +1 -1
- package/6252.min.js +1 -1
- package/6280.min.js +1 -1
- package/6297.min.js +1 -1
- package/6340.min.js +1 -1
- package/6362.min.js +1 -1
- package/6388.min.js +1 -1
- package/6412.min.js +1 -1
- package/6496.min.js +1 -1
- package/6502.min.js +1 -1
- package/6561.min.js +1 -1
- package/6693.min.js +1 -1
- package/6822.min.js +1 -1
- package/6827.min.js +1 -1
- package/686.min.js +1 -1
- package/6868.min.js +1 -1
- package/7079.min.js +1 -1
- package/7157.min.js +1 -1
- package/7203.min.js +1 -1
- package/7206.min.js +1 -1
- package/7218.min.js +1 -1
- package/7359.min.js +1 -1
- package/7374.min.js +1 -1
- package/7386.min.js +1 -1
- package/746.min.js +1 -1
- package/762.min.js +1 -1
- package/7788.min.js +1 -1
- package/7817.min.js +1 -1
- package/7856.min.js +1 -0
- package/786.min.js +1 -1
- package/7921.min.js +1 -1
- package/803.min.js +1 -1
- package/8082.min.js +1 -1
- package/8173.min.js +1 -1
- package/8243.min.js +1 -1
- package/8258.min.js +1 -0
- package/8272.min.js +1 -1
- package/830.min.js +1 -1
- package/8342.min.js +1 -1
- package/8421.min.js +1 -1
- package/8536.min.js +1 -1
- package/8553.min.js +2 -2
- package/8569.min.js +1 -1
- package/8626.min.js +1 -1
- package/8627.min.js +1 -0
- package/8650.min.js +1 -1
- package/8796.min.js +1 -1
- package/8930.min.js +1 -1
- package/8957.min.js +1 -1
- package/8989.min.js +1 -1
- package/9033.min.js +1 -1
- package/9132.min.js +1 -0
- package/9134.min.js +1 -1
- package/9208.min.js +1 -0
- package/9261.min.js +1 -1
- package/9293.min.js +1 -1
- package/9395.min.js +1 -0
- package/951.min.js +1 -1
- package/9630.min.js +1 -1
- package/9643.min.js +1 -1
- package/9720.min.js +1 -1
- package/9748.min.js +1 -1
- package/9782.min.js +1 -1
- package/9838.min.js +1 -1
- package/9950.min.js +1 -1
- package/basic_dist_browser_index_js.js +2 -2
- package/browser/index.js +2 -1
- package/cjs/index.js +2 -1
- package/effects_bubble_dist_browser_BubbleDrawer_js.js +1 -1
- package/effects_bubble_dist_browser_index_js.js +2 -2
- package/effects_particles_dist_browser_ParticlesDrawer_js.js +1 -1
- package/effects_particles_dist_browser_index_js.js +2 -2
- package/effects_shadow_dist_browser_ShadowDrawer_js.js +1 -1
- package/effects_shadow_dist_browser_index_js.js +2 -2
- package/effects_trail_dist_browser_TrailDrawer_js.js +1 -1
- package/effects_trail_dist_browser_index_js.js +2 -2
- package/engine_dist_browser_Core_Container_js.js +33 -3
- package/esm/index.js +2 -1
- package/full_dist_browser_index_js.js +2 -2
- package/interactions_external_attract_dist_browser_Attractor_js.js +24 -4
- package/interactions_external_attract_dist_browser_index_js.js +2 -2
- package/interactions_external_bounce_dist_browser_Bouncer_js.js +24 -4
- package/interactions_external_bounce_dist_browser_index_js.js +2 -2
- package/interactions_external_bubble_dist_browser_Bubbler_js.js +24 -4
- package/interactions_external_bubble_dist_browser_index_js.js +2 -2
- package/interactions_external_cannon_dist_browser_Cannoner_js.js +24 -4
- package/interactions_external_cannon_dist_browser_index_js.js +2 -2
- package/interactions_external_connect_dist_browser_Connector_js.js +24 -4
- package/interactions_external_connect_dist_browser_index_js.js +2 -2
- package/interactions_external_drag_dist_browser_Dragger_js.js +24 -4
- package/interactions_external_drag_dist_browser_index_js.js +2 -2
- package/interactions_external_grab_dist_browser_Grabber_js.js +24 -4
- package/interactions_external_grab_dist_browser_index_js.js +2 -2
- package/interactions_external_parallax_dist_browser_Parallaxer_js.js +24 -4
- package/interactions_external_parallax_dist_browser_index_js.js +2 -2
- package/interactions_external_particle_dist_browser_InteractivityParticleMaker_js.js +24 -4
- package/interactions_external_particle_dist_browser_index_js.js +2 -2
- package/interactions_external_pause_dist_browser_Pauser_js.js +24 -4
- package/interactions_external_pause_dist_browser_index_js.js +2 -2
- package/interactions_external_pop_dist_browser_Popper_js.js +24 -4
- package/interactions_external_pop_dist_browser_index_js.js +2 -2
- package/interactions_external_push_dist_browser_Pusher_js.js +24 -4
- package/interactions_external_push_dist_browser_index_js.js +2 -2
- package/interactions_external_remove_dist_browser_Remover_js.js +24 -4
- package/interactions_external_remove_dist_browser_index_js.js +2 -2
- package/interactions_external_repulse_dist_browser_Repulser_js.js +24 -4
- package/interactions_external_repulse_dist_browser_index_js.js +2 -2
- package/interactions_external_slow_dist_browser_Slower_js.js +24 -4
- package/interactions_external_slow_dist_browser_index_js.js +2 -2
- package/interactions_external_trail_dist_browser_TrailMaker_js.js +24 -4
- package/interactions_external_trail_dist_browser_index_js.js +2 -2
- package/interactions_light_dist_browser_ExternalLighter_js.js +24 -4
- package/interactions_light_dist_browser_ParticlesLighter_js.js +24 -4
- package/interactions_light_dist_browser_index_js.js +2 -2
- package/interactions_particles_attract_dist_browser_Attractor_js.js +24 -4
- package/interactions_particles_attract_dist_browser_index_js.js +2 -2
- package/interactions_particles_collisions_dist_browser_Collider_js.js +37 -7
- package/interactions_particles_collisions_dist_browser_OverlapPluginInstance_js.js +1 -1
- package/interactions_particles_collisions_dist_browser_OverlapPlugin_js.js +2 -2
- package/interactions_particles_collisions_dist_browser_index_js.js +2 -2
- package/interactions_particles_links_dist_browser_LinkInstance_js.js +1 -1
- package/interactions_particles_links_dist_browser_Linker_js.js +24 -4
- package/interactions_particles_links_dist_browser_LinksPlugin_js.js +2 -2
- package/interactions_particles_links_dist_browser_index_js.js +2 -2
- package/interactions_particles_repulse_dist_browser_Repulser_js.js +24 -4
- package/interactions_particles_repulse_dist_browser_index_js.js +2 -2
- package/package.json +79 -80
- package/paths_branches_dist_browser_BranchesPathGenerator_js.js +12 -2
- package/paths_branches_dist_browser_index_js.js +2 -2
- package/paths_brownian_dist_browser_BrownianPathGenerator_js.js +12 -2
- package/paths_brownian_dist_browser_index_js.js +2 -2
- package/paths_curlNoise_dist_browser_CurlNoiseGenerator_js.js +2 -2
- package/paths_curlNoise_dist_browser_index_js.js +12 -2
- package/paths_curves_dist_browser_CurvesPathGenerator_js.js +2 -2
- package/paths_curves_dist_browser_index_js.js +12 -2
- package/paths_fractalNoise_dist_browser_FractalNoiseGenerator_js.js +2 -2
- package/paths_fractalNoise_dist_browser_index_js.js +12 -2
- package/paths_grid_dist_browser_GridPathGenerator_js.js +12 -2
- package/paths_grid_dist_browser_index_js.js +2 -2
- package/paths_levy_dist_browser_LevyPathGenerator_js.js +12 -2
- package/paths_levy_dist_browser_index_js.js +2 -2
- package/paths_perlinNoise_dist_browser_PerlinNoiseGenerator_js.js +2 -2
- package/paths_perlinNoise_dist_browser_index_js.js +12 -2
- package/paths_polygon_dist_browser_PolygonPathGenerator_js.js +2 -2
- package/paths_polygon_dist_browser_index_js.js +12 -2
- package/paths_random_dist_browser_RandomPathGenerator_js.js +2 -2
- package/paths_random_dist_browser_index_js.js +12 -2
- package/paths_simplexNoise_dist_browser_SimplexNoiseGenerator_js.js +2 -2
- package/paths_simplexNoise_dist_browser_index_js.js +12 -2
- package/paths_spiral_dist_browser_SpiralPathGenerator_js.js +12 -2
- package/paths_spiral_dist_browser_index_js.js +2 -2
- package/paths_svg_dist_browser_SVGPathGenerator_js.js +2 -2
- package/paths_svg_dist_browser_index_js.js +12 -2
- package/paths_zigzag_dist_browser_ZigZagPathGenerator_js.js +2 -2
- package/paths_zigzag_dist_browser_index_js.js +12 -2
- package/plugins_absorbers_dist_browser_AbsorberInstance_js.js +1 -1
- package/plugins_absorbers_dist_browser_AbsorbersInstancesManager_js.js +1 -1
- package/plugins_absorbers_dist_browser_AbsorbersInteractor_js.js +24 -4
- package/plugins_absorbers_dist_browser_AbsorbersPluginInstance_js.js +1 -1
- package/plugins_absorbers_dist_browser_AbsorbersPlugin_js.js +1 -1
- package/plugins_absorbers_dist_browser_getAbsorbersInstancesManager_js.js +30 -0
- package/plugins_absorbers_dist_browser_index_js.js +22 -2
- package/plugins_backgroundMask_dist_browser_BackgroundMaskPluginInstance_js.js +1 -1
- package/plugins_backgroundMask_dist_browser_BackgroundMaskPlugin_js.js +1 -1
- package/plugins_backgroundMask_dist_browser_index_js.js +2 -2
- package/plugins_blend_dist_browser_BlendPluginInstance_js.js +1 -1
- package/plugins_blend_dist_browser_BlendPlugin_js.js +1 -1
- package/plugins_blend_dist_browser_index_js.js +2 -2
- package/plugins_canvasMask_dist_browser_CanvasMaskPluginInstance_js.js +1 -1
- package/plugins_canvasMask_dist_browser_CanvasMaskPlugin_js.js +2 -2
- package/plugins_canvasMask_dist_browser_index_js.js +2 -2
- package/plugins_colors_hex_dist_browser_HexColorManager_js.js +1 -1
- package/plugins_colors_hex_dist_browser_index_js.js +2 -2
- package/plugins_colors_hsl_dist_browser_HslColorManager_js.js +1 -1
- package/plugins_colors_hsl_dist_browser_index_js.js +2 -2
- package/plugins_colors_hsv_dist_browser_HsvColorManager_js.js +1 -1
- package/plugins_colors_hsv_dist_browser_index_js.js +2 -2
- package/plugins_colors_hwb_dist_browser_HwbColorManager_js.js +1 -1
- package/plugins_colors_hwb_dist_browser_index_js.js +2 -2
- package/plugins_colors_lab_dist_browser_LabColorManager_js.js +1 -1
- package/plugins_colors_lab_dist_browser_index_js.js +2 -2
- package/plugins_colors_lch_dist_browser_LchColorManager_js.js +1 -1
- package/plugins_colors_lch_dist_browser_index_js.js +2 -2
- package/plugins_colors_named_dist_browser_NamedColorManager_js.js +1 -1
- package/plugins_colors_named_dist_browser_index_js.js +2 -2
- package/plugins_colors_oklab_dist_browser_OklabColorManager_js.js +1 -1
- package/plugins_colors_oklab_dist_browser_index_js.js +2 -2
- package/plugins_colors_oklch_dist_browser_OklchColorManager_js.js +1 -1
- package/plugins_colors_oklch_dist_browser_index_js.js +2 -2
- package/plugins_colors_rgb_dist_browser_RgbColorManager_js.js +1 -1
- package/plugins_colors_rgb_dist_browser_index_js.js +2 -2
- package/plugins_easings_back_dist_browser_easingsFunctions_js.js +1 -1
- package/plugins_easings_back_dist_browser_index_js.js +2 -2
- package/plugins_easings_bounce_dist_browser_easingsFunctions_js.js +1 -1
- package/plugins_easings_bounce_dist_browser_index_js.js +2 -2
- package/plugins_easings_circ_dist_browser_easingsFunctions_js.js +1 -1
- package/plugins_easings_circ_dist_browser_index_js.js +2 -2
- package/plugins_easings_cubic_dist_browser_easingsFunctions_js.js +1 -1
- package/plugins_easings_cubic_dist_browser_index_js.js +2 -2
- package/plugins_easings_elastic_dist_browser_easingsFunctions_js.js +1 -1
- package/plugins_easings_elastic_dist_browser_index_js.js +2 -2
- package/plugins_easings_expo_dist_browser_easingsFunctions_js.js +1 -1
- package/plugins_easings_expo_dist_browser_index_js.js +2 -2
- package/plugins_easings_gaussian_dist_browser_easingsFunctions_js.js +1 -1
- package/plugins_easings_gaussian_dist_browser_index_js.js +2 -2
- package/plugins_easings_linear_dist_browser_easingsFunctions_js.js +1 -1
- package/plugins_easings_linear_dist_browser_index_js.js +2 -2
- package/plugins_easings_quad_dist_browser_easingsFunctions_js.js +1 -1
- package/plugins_easings_quad_dist_browser_index_js.js +2 -2
- package/plugins_easings_quart_dist_browser_easingsFunctions_js.js +1 -1
- package/plugins_easings_quart_dist_browser_index_js.js +2 -2
- package/plugins_easings_quint_dist_browser_easingsFunctions_js.js +1 -1
- package/plugins_easings_quint_dist_browser_index_js.js +2 -2
- package/plugins_easings_sigmoid_dist_browser_easingsFunctions_js.js +1 -1
- package/plugins_easings_sigmoid_dist_browser_index_js.js +2 -2
- package/plugins_easings_sine_dist_browser_easingsFunctions_js.js +1 -1
- package/plugins_easings_sine_dist_browser_index_js.js +2 -2
- package/plugins_easings_smoothstep_dist_browser_easingsFunctions_js.js +1 -1
- package/plugins_easings_smoothstep_dist_browser_index_js.js +2 -2
- package/plugins_emittersShapes_canvas_dist_browser_EmittersCanvasShapeGenerator_js.js +33 -3
- package/plugins_emittersShapes_canvas_dist_browser_index_js.js +2 -2
- package/plugins_emittersShapes_circle_dist_browser_EmittersCircleShapeGenerator_js.js +32 -2
- package/plugins_emittersShapes_circle_dist_browser_index_js.js +2 -2
- package/plugins_emittersShapes_path_dist_browser_EmittersPathShapeGenerator_js.js +32 -2
- package/plugins_emittersShapes_path_dist_browser_index_js.js +2 -2
- package/plugins_emittersShapes_polygon_dist_browser_EmittersPolygonShapeGenerator_js.js +32 -2
- package/plugins_emittersShapes_polygon_dist_browser_index_js.js +2 -2
- package/plugins_emittersShapes_square_dist_browser_EmittersSquareShapeGenerator_js.js +32 -2
- package/plugins_emittersShapes_square_dist_browser_index_js.js +2 -2
- package/plugins_emitters_dist_browser_EmitterInstance_js.js +1 -1
- package/plugins_emitters_dist_browser_EmittersInstancesManager_js.js +1 -1
- package/plugins_emitters_dist_browser_EmittersInteractor_js.js +24 -4
- package/plugins_emitters_dist_browser_EmittersPluginInstance_js.js +1 -1
- package/plugins_emitters_dist_browser_EmittersPlugin_js.js +1 -1
- package/plugins_emitters_dist_browser_ShapeManager_js.js +1 -1
- package/plugins_emitters_dist_browser_addEmittersShapesManager_js.js +30 -0
- package/plugins_emitters_dist_browser_getEmittersInstancesManager_js.js +30 -0
- package/plugins_emitters_dist_browser_index_js.js +32 -2
- package/plugins_exports_image_dist_browser_ExportImagePluginInstance_js.js +1 -1
- package/plugins_exports_image_dist_browser_ExportImagePlugin_js.js +1 -1
- package/plugins_exports_image_dist_browser_index_js.js +2 -2
- package/plugins_exports_json_dist_browser_ExportJSONPluginInstance_js.js +1 -1
- package/plugins_exports_json_dist_browser_ExportJSONPlugin_js.js +1 -1
- package/plugins_exports_json_dist_browser_index_js.js +2 -2
- package/plugins_exports_video_dist_browser_ExportVideoPluginInstance_js.js +1 -1
- package/plugins_exports_video_dist_browser_ExportVideoPlugin_js.js +1 -1
- package/plugins_exports_video_dist_browser_index_js.js +2 -2
- package/plugins_infection_dist_browser_InfectionPluginInstance_js.js +1 -1
- package/plugins_infection_dist_browser_InfectionPlugin_js.js +1 -1
- package/plugins_infection_dist_browser_ParticlesInfecter_js.js +24 -4
- package/plugins_infection_dist_browser_index_js.js +2 -2
- package/plugins_interactivity_dist_browser_InteractivityPluginInstance_js.js +2 -2
- package/plugins_interactivity_dist_browser_InteractivityPlugin_js.js +1 -1
- package/plugins_interactivity_dist_browser_index_js.js +24 -4
- package/plugins_manualParticles_dist_browser_ManualParticlesPluginInstance_js.js +1 -1
- package/plugins_manualParticles_dist_browser_ManualParticlesPlugin_js.js +2 -2
- package/plugins_manualParticles_dist_browser_index_js.js +2 -2
- package/plugins_motion_dist_browser_MotionPluginInstance_js.js +1 -1
- package/plugins_motion_dist_browser_MotionPlugin_js.js +1 -1
- package/plugins_motion_dist_browser_index_js.js +2 -2
- package/plugins_move_dist_browser_MovePluginInstance_js.js +1 -1
- package/plugins_move_dist_browser_MovePlugin_js.js +1 -1
- package/plugins_move_dist_browser_index_js.js +2 -2
- package/plugins_poisson_dist_browser_PoissonDiscPluginInstance_js.js +1 -1
- package/plugins_poisson_dist_browser_PoissonDiscPlugin_js.js +2 -2
- package/plugins_poisson_dist_browser_PoissonDisc_js.js +1 -1
- package/plugins_poisson_dist_browser_index_js.js +2 -2
- package/plugins_polygonMask_dist_browser_PolygonMaskInstance_js.js +1 -1
- package/plugins_polygonMask_dist_browser_PolygonMaskPlugin_js.js +1 -1
- package/plugins_polygonMask_dist_browser_index_js.js +2 -2
- package/plugins_responsive_dist_browser_ResponsivePluginInstance_js.js +2 -2
- package/plugins_responsive_dist_browser_ResponsivePlugin_js.js +2 -2
- package/plugins_responsive_dist_browser_index_js.js +2 -2
- package/plugins_sounds_dist_browser_SoundsPluginInstance_js.js +1 -1
- package/plugins_sounds_dist_browser_SoundsPlugin_js.js +2 -2
- package/plugins_sounds_dist_browser_index_js.js +2 -2
- package/plugins_themes_dist_browser_ThemesPluginInstance_js.js +1 -1
- package/plugins_themes_dist_browser_ThemesPlugin_js.js +1 -1
- package/plugins_themes_dist_browser_index_js.js +2 -2
- package/plugins_trail_dist_browser_TrailPluginInstance_js.js +1 -1
- package/plugins_trail_dist_browser_TrailPlugin_js.js +23 -3
- package/plugins_trail_dist_browser_index_js.js +2 -2
- package/plugins_zoom_dist_browser_ZoomPluginInstance_js.js +1 -1
- package/plugins_zoom_dist_browser_ZoomPlugin_js.js +1 -1
- package/plugins_zoom_dist_browser_index_js.js +2 -2
- package/report.html +1 -1
- package/shapes_arrow_dist_browser_ArrowDrawer_js.js +1 -1
- package/shapes_arrow_dist_browser_index_js.js +2 -2
- package/shapes_cards_dist_browser_cards_CardDrawer_js.js +1 -1
- package/shapes_cards_dist_browser_clubs_ClubDrawer_js.js +1 -1
- package/shapes_cards_dist_browser_diamonds_DiamondDrawer_js.js +1 -1
- package/shapes_cards_dist_browser_hearts_HeartDrawer_js.js +1 -1
- package/shapes_cards_dist_browser_index_js.js +17 -7
- package/shapes_cards_dist_browser_paths_js.js +1 -1
- package/shapes_cards_dist_browser_spades_SpadeDrawer_js.js +1 -1
- package/shapes_circle_dist_browser_CircleDrawer_js.js +1 -1
- package/shapes_circle_dist_browser_index_js.js +2 -2
- package/shapes_cog_dist_browser_CogDrawer_js.js +1 -1
- package/shapes_cog_dist_browser_index_js.js +2 -2
- package/shapes_emoji_dist_browser_EmojiDrawer_js.js +1 -1
- package/shapes_emoji_dist_browser_index_js.js +2 -2
- package/shapes_heart_dist_browser_HeartDrawer_js.js +1 -1
- package/shapes_heart_dist_browser_index_js.js +2 -2
- package/shapes_image_dist_browser_GifUtils_Utils_js.js +1 -1
- package/shapes_image_dist_browser_ImageDrawer_js.js +1 -1
- package/shapes_image_dist_browser_ImagePreloaderInstance_js.js +1 -1
- package/shapes_image_dist_browser_ImagePreloader_js.js +1 -1
- package/shapes_image_dist_browser_index_js.js +2 -2
- package/shapes_infinity_dist_browser_InfinityDrawer_js.js +2 -2
- package/shapes_infinity_dist_browser_index_js.js +2 -2
- package/shapes_line_dist_browser_LineDrawer_js.js +1 -1
- package/shapes_line_dist_browser_index_js.js +2 -2
- package/shapes_matrix_dist_browser_MatrixDrawer_js.js +1 -1
- package/shapes_matrix_dist_browser_index_js.js +2 -2
- package/shapes_path_dist_browser_PathDrawer_js.js +1 -1
- package/shapes_path_dist_browser_index_js.js +2 -2
- package/shapes_polygon_dist_browser_PolygonDrawer_js.js +1 -1
- package/shapes_polygon_dist_browser_TriangleDrawer_js.js +2 -2
- package/shapes_polygon_dist_browser_index_js.js +2 -2
- package/shapes_rounded-polygon_dist_browser_RoundedPolygonDrawer_js.js +1 -1
- package/shapes_rounded-polygon_dist_browser_index_js.js +2 -2
- package/shapes_rounded-rect_dist_browser_RoundedRectDrawer_js.js +1 -1
- package/shapes_rounded-rect_dist_browser_index_js.js +2 -2
- package/shapes_spiral_dist_browser_SpiralDrawer_js.js +1 -1
- package/shapes_spiral_dist_browser_index_js.js +2 -2
- package/shapes_square_dist_browser_SquareDrawer_js.js +1 -1
- package/shapes_square_dist_browser_index_js.js +2 -2
- package/shapes_squircle_dist_browser_SquircleDrawer_js.js +1 -1
- package/shapes_squircle_dist_browser_index_js.js +2 -2
- package/shapes_star_dist_browser_StarDrawer_js.js +1 -1
- package/shapes_star_dist_browser_index_js.js +2 -2
- package/shapes_text_dist_browser_TextDrawer_js.js +1 -1
- package/shapes_text_dist_browser_index_js.js +2 -2
- package/slim_dist_browser_index_js.js +2 -2
- package/tsparticles.all.bundle.js +3 -3
- package/tsparticles.all.bundle.min.js +2 -2
- package/tsparticles.all.js +16 -6
- package/tsparticles.all.min.js +1 -1
- package/updaters_destroy_dist_browser_DestroyUpdater_js.js +1 -1
- package/updaters_destroy_dist_browser_index_js.js +2 -2
- package/updaters_fillColor_dist_browser_FillColorUpdater_js.js +1 -1
- package/updaters_fillColor_dist_browser_index_js.js +2 -2
- package/updaters_gradient_dist_browser_GradientUpdater_js.js +1 -1
- package/updaters_gradient_dist_browser_index_js.js +2 -2
- package/updaters_life_dist_browser_LifeUpdater_js.js +1 -1
- package/updaters_life_dist_browser_index_js.js +2 -2
- package/updaters_opacity_dist_browser_OpacityUpdater_js.js +1 -1
- package/updaters_opacity_dist_browser_index_js.js +2 -2
- package/updaters_orbit_dist_browser_OrbitUpdater_js.js +1 -1
- package/updaters_orbit_dist_browser_index_js.js +2 -2
- package/updaters_outModes_dist_browser_OutOfCanvasUpdater_js.js +1 -1
- package/updaters_outModes_dist_browser_index_js.js +2 -2
- package/updaters_roll_dist_browser_RollUpdater_js.js +2 -2
- package/updaters_roll_dist_browser_index_js.js +2 -2
- package/updaters_rotate_dist_browser_RotateUpdater_js.js +1 -1
- package/updaters_rotate_dist_browser_index_js.js +2 -2
- package/updaters_size_dist_browser_SizeUpdater_js.js +1 -1
- package/updaters_size_dist_browser_index_js.js +2 -2
- package/updaters_strokeColor_dist_browser_StrokeColorUpdater_js.js +1 -1
- package/updaters_strokeColor_dist_browser_index_js.js +2 -2
- package/updaters_tilt_dist_browser_TiltUpdater_js.js +1 -1
- package/updaters_tilt_dist_browser_index_js.js +2 -2
- package/updaters_twinkle_dist_browser_TwinkleUpdater_js.js +1 -1
- package/updaters_twinkle_dist_browser_index_js.js +2 -2
- package/updaters_wobble_dist_browser_WobbleUpdater_js.js +1 -1
- package/updaters_wobble_dist_browser_index_js.js +2 -2
- package/utils_simplexNoise_dist_browser_index_js.js +1 -1
- package/5056.min.js +0 -1
- package/5352.min.js +0 -1
- package/7062.min.js +0 -1
- package/umd/bundle.js +0 -30
- package/umd/index.js +0 -212
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Demo / Generator : https://particles.js.org/
|
|
5
5
|
* GitHub : https://www.github.com/matteobruni/tsparticles
|
|
6
6
|
* How to use? : Check the GitHub README
|
|
7
|
-
* v4.0.0-beta.
|
|
7
|
+
* v4.0.0-beta.3
|
|
8
8
|
*/
|
|
9
9
|
"use strict";
|
|
10
10
|
/*
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
\**************************************************/
|
|
24
24
|
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
25
25
|
|
|
26
|
-
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ brownianPathName: () => (/* binding */ brownianPathName),\n/* harmony export */ loadBrownianPath: () => (/* binding */ loadBrownianPath)\n/* harmony export */ });\nconst brownianPathName = \"brownianPathGenerator\";\nasync function loadBrownianPath(engine) {\n engine.checkVersion(\"4.0.0-beta.
|
|
26
|
+
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ brownianPathName: () => (/* binding */ brownianPathName),\n/* harmony export */ loadBrownianPath: () => (/* binding */ loadBrownianPath)\n/* harmony export */ });\nconst brownianPathName = \"brownianPathGenerator\";\nasync function loadBrownianPath(engine) {\n engine.checkVersion(\"4.0.0-beta.3\");\n await engine.pluginManager.register(async (e)=>{\n const { ensureBaseMoverLoaded } = await __webpack_require__.e(/*! import() */ \"plugins_move_dist_browser_index_js\").then(__webpack_require__.bind(__webpack_require__, /*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\"));\n ensureBaseMoverLoaded(e);\n e.pluginManager.addPathGenerator?.(brownianPathName, async (container)=>{\n const { BrownianPathGenerator } = await __webpack_require__.e(/*! import() */ \"paths_brownian_dist_browser_BrownianPathGenerator_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./BrownianPathGenerator.js */ \"../../paths/brownian/dist/browser/BrownianPathGenerator.js\"));\n return new BrownianPathGenerator(container);\n });\n });\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/brownian/dist/browser/index.js?\n}");
|
|
27
27
|
|
|
28
28
|
/***/ }
|
|
29
29
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Demo / Generator : https://particles.js.org/
|
|
5
5
|
* GitHub : https://www.github.com/matteobruni/tsparticles
|
|
6
6
|
* How to use? : Check the GitHub README
|
|
7
|
-
* v4.0.0-beta.
|
|
7
|
+
* v4.0.0-beta.3
|
|
8
8
|
*/
|
|
9
9
|
"use strict";
|
|
10
10
|
/*
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
\****************************************************************/
|
|
24
24
|
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
25
25
|
|
|
26
|
-
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CurlNoiseGenerator: () => (/* binding */ CurlNoiseGenerator)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n/* harmony import */ var
|
|
26
|
+
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CurlNoiseGenerator: () => (/* binding */ CurlNoiseGenerator)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_plugin_move__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_simplex_noise__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @tsparticles/simplex-noise */ \"../../utils/simplexNoise/dist/browser/index.js\");\n\n\n\nconst defaultOptions = {\n speed: 0.2,\n step: 250\n};\nclass CurlNoiseGenerator {\n options;\n _container;\n _res;\n _simplex;\n constructor(container){\n this._container = container;\n this._res = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.origin;\n const simplex = new _tsparticles_simplex_noise__WEBPACK_IMPORTED_MODULE_2__.SimplexNoise();\n this._simplex = simplex.noise2d;\n this.options = (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.deepExtend)({}, defaultOptions);\n }\n generate(particle) {\n const pos = particle.getPosition(), { speed, step } = this.options, x = pos.x / step, y = pos.y / step, eps = 0.001, n1a = this._simplex.noise(x, y + eps), n2a = this._simplex.noise(x, y - eps), a = (n1a - n2a) / (_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.double * eps), n1b = this._simplex.noise(x + eps, y), n2b = this._simplex.noise(x - eps, y), b = (n1b - n2b) / (_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.double * eps);\n particle.velocity.x = 0;\n particle.velocity.y = 0;\n this._res.x = speed * a;\n this._res.y = speed * -b;\n return this._res;\n }\n init() {\n const container = this._container, sourceOptions = container.actualOptions.particles.move.path.options;\n this.options.seed = sourceOptions[\"seed\"];\n this.options.speed = (sourceOptions[\"speed\"] ?? defaultOptions.speed) * container.retina.pixelRatio;\n this.options.step = sourceOptions[\"step\"] ?? defaultOptions.step;\n this._simplex.seed(this.options.seed ?? (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)());\n }\n reset() {}\n update() {}\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/curlNoise/dist/browser/CurlNoiseGenerator.js?\n}");
|
|
27
27
|
|
|
28
28
|
/***/ }
|
|
29
29
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Demo / Generator : https://particles.js.org/
|
|
5
5
|
* GitHub : https://www.github.com/matteobruni/tsparticles
|
|
6
6
|
* How to use? : Check the GitHub README
|
|
7
|
-
* v4.0.0-beta.
|
|
7
|
+
* v4.0.0-beta.3
|
|
8
8
|
*/
|
|
9
9
|
"use strict";
|
|
10
10
|
/*
|
|
@@ -23,7 +23,17 @@
|
|
|
23
23
|
\***************************************************/
|
|
24
24
|
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
25
25
|
|
|
26
|
-
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ curlNoisePathName: () => (/* binding */ curlNoisePathName),\n/* harmony export */ loadCurlNoisePath: () => (/* binding */ loadCurlNoisePath)\n/* harmony export */ });\nconst curlNoisePathName = \"curlNoise\";\nasync function loadCurlNoisePath(engine) {\n engine.checkVersion(\"4.0.0-beta.
|
|
26
|
+
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ curlNoisePathName: () => (/* binding */ curlNoisePathName),\n/* harmony export */ loadCurlNoisePath: () => (/* binding */ loadCurlNoisePath)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_plugin_move__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\");\n\n\nconst curlNoisePathName = \"curlNoise\";\nasync function loadCurlNoisePath(engine) {\n engine.checkVersion(\"4.0.0-beta.3\");\n await engine.pluginManager.register(async (e)=>{\n const { ensureBaseMoverLoaded } = await Promise.resolve(/*! import() */).then(__webpack_require__.bind(__webpack_require__, /*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\"));\n ensureBaseMoverLoaded(e);\n e.pluginManager.addPathGenerator?.(curlNoisePathName, async (container)=>{\n const { CurlNoiseGenerator } = await Promise.all(/*! import() */[__webpack_require__.e(\"utils_simplexNoise_dist_browser_index_js\"), __webpack_require__.e(\"paths_curlNoise_dist_browser_CurlNoiseGenerator_js\")]).then(__webpack_require__.bind(__webpack_require__, /*! ./CurlNoiseGenerator.js */ \"../../paths/curlNoise/dist/browser/CurlNoiseGenerator.js\"));\n return new CurlNoiseGenerator(container);\n });\n });\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/curlNoise/dist/browser/index.js?\n}");
|
|
27
|
+
|
|
28
|
+
/***/ },
|
|
29
|
+
|
|
30
|
+
/***/ "../../plugins/move/dist/browser/index.js"
|
|
31
|
+
/*!************************************************!*\
|
|
32
|
+
!*** ../../plugins/move/dist/browser/index.js ***!
|
|
33
|
+
\************************************************/
|
|
34
|
+
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
35
|
+
|
|
36
|
+
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ensureBaseMoverLoaded: () => (/* binding */ ensureBaseMoverLoaded),\n/* harmony export */ loadMovePlugin: () => (/* binding */ loadMovePlugin)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n\nasync function loadMovePlugin(engine) {\n engine.checkVersion(\"4.0.0-beta.3\");\n await engine.pluginManager.register(async (e)=>{\n const moveEngine = e, movePluginManager = moveEngine.pluginManager;\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.pathGenerators ??= new Map();\n movePluginManager.addPathGenerator = (name, generator)=>{\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.initializers.pathGenerators.set(name, generator);\n };\n movePluginManager.getPathGenerators = async (container, force = false)=>{\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.pathGenerators ??= new Map();\n return (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getItemMapFromInitializer)(container, movePluginManager.pathGenerators, movePluginManager.initializers.pathGenerators, force);\n };\n const { MovePlugin } = await __webpack_require__.e(/*! import() */ \"plugins_move_dist_browser_MovePlugin_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./MovePlugin.js */ \"../../plugins/move/dist/browser/MovePlugin.js\"));\n e.pluginManager.addPlugin(new MovePlugin(e.pluginManager));\n });\n}\nfunction ensureBaseMoverLoaded(e) {\n if (!e.pluginManager.addPathGenerator) {\n throw new Error(\"tsParticles Base Mover is not loaded\");\n }\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../plugins/move/dist/browser/index.js?\n}");
|
|
27
37
|
|
|
28
38
|
/***/ }
|
|
29
39
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Demo / Generator : https://particles.js.org/
|
|
5
5
|
* GitHub : https://www.github.com/matteobruni/tsparticles
|
|
6
6
|
* How to use? : Check the GitHub README
|
|
7
|
-
* v4.0.0-beta.
|
|
7
|
+
* v4.0.0-beta.3
|
|
8
8
|
*/
|
|
9
9
|
"use strict";
|
|
10
10
|
/*
|
|
@@ -33,7 +33,7 @@ eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpa
|
|
|
33
33
|
\**************************************************************/
|
|
34
34
|
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
35
35
|
|
|
36
|
-
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CurvesPathGenerator: () => (/* binding */ CurvesPathGenerator)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n/* harmony import */ var _Curves_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Curves.js */ \"../../paths/curves/dist/browser/Curves.js\");\n\n\nconst defaultOptions = {\n rndFunc: null,\n period: 100,\n nbHarmonics: 2,\n attenHarmonics: 0.8,\n lowValue: -0.03,\n highValue: 0.03\n};\nfunction randomVelocity() {\n const offset = 0.8, factor = 0.6;\n return (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() * factor + offset;\n}\nclass CurvesPathGenerator {\n options;\n _container;\n constructor(container){\n this._container = container;\n this.options = (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.deepExtend)({}, defaultOptions);\n }\n generate(particle) {\n if (!particle.pathGen) {\n const { options } = this;\n particle.pathGen = (0,_Curves_js__WEBPACK_IMPORTED_MODULE_1__.CurvesPathGen)(options.rndFunc, options.period, options.nbHarmonics, options.attenHarmonics, options.lowValue, options.highValue);\n }\n if (particle.curveVelocity) {\n particle.curveVelocity.length += 0.01;\n particle.curveVelocity.angle = (particle.curveVelocity.angle + particle.pathGen()) % _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.doublePI;\n } else {\n particle.curveVelocity = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.origin;\n particle.curveVelocity.length = randomVelocity();\n particle.curveVelocity.angle = (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() * _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.doublePI;\n }\n particle.velocity.x = 0;\n particle.velocity.y = 0;\n return particle.curveVelocity;\n }\n init() {\n const sourceOptions = this._container.actualOptions.particles.move.path.options;\n if ((0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.isFunction)(sourceOptions[\"rndFunc\"])) {\n this.options.rndFunc = sourceOptions[\"rndFunc\"];\n } else if ((0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.isString)(sourceOptions[\"rndFunc\"])) {\n this.options.rndFunc = globalThis[sourceOptions[\"rndFunc\"]] ?? this.options.rndFunc;\n }\n this.options.period = sourceOptions[\"period\"] ?? this.options.period;\n this.options.nbHarmonics = sourceOptions[\"nbHarmonics\"] ?? this.options.nbHarmonics;\n this.options.attenHarmonics = sourceOptions[\"attenHarmonics\"] ?? this.options.attenHarmonics;\n this.options.lowValue = sourceOptions[\"lowValue\"] ?? this.options.lowValue;\n this.options.highValue = sourceOptions[\"highValue\"] ?? this.options.highValue;\n }\n reset(particle) {\n delete particle.pathGen;\n delete particle.curveVelocity;\n }\n update() {}\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/curves/dist/browser/CurvesPathGenerator.js?\n}");
|
|
36
|
+
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CurvesPathGenerator: () => (/* binding */ CurvesPathGenerator)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n/* harmony import */ var _Curves_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Curves.js */ \"../../paths/curves/dist/browser/Curves.js\");\n/* harmony import */ var _tsparticles_plugin_move__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\");\n\n\n\nconst defaultOptions = {\n rndFunc: null,\n period: 100,\n nbHarmonics: 2,\n attenHarmonics: 0.8,\n lowValue: -0.03,\n highValue: 0.03\n};\nfunction randomVelocity() {\n const offset = 0.8, factor = 0.6;\n return (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() * factor + offset;\n}\nclass CurvesPathGenerator {\n options;\n _container;\n constructor(container){\n this._container = container;\n this.options = (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.deepExtend)({}, defaultOptions);\n }\n generate(particle) {\n if (!particle.pathGen) {\n const { options } = this;\n particle.pathGen = (0,_Curves_js__WEBPACK_IMPORTED_MODULE_1__.CurvesPathGen)(options.rndFunc, options.period, options.nbHarmonics, options.attenHarmonics, options.lowValue, options.highValue);\n }\n if (particle.curveVelocity) {\n particle.curveVelocity.length += 0.01;\n particle.curveVelocity.angle = (particle.curveVelocity.angle + particle.pathGen()) % _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.doublePI;\n } else {\n particle.curveVelocity = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.origin;\n particle.curveVelocity.length = randomVelocity();\n particle.curveVelocity.angle = (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() * _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.doublePI;\n }\n particle.velocity.x = 0;\n particle.velocity.y = 0;\n return particle.curveVelocity;\n }\n init() {\n const sourceOptions = this._container.actualOptions.particles.move.path.options;\n if ((0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.isFunction)(sourceOptions[\"rndFunc\"])) {\n this.options.rndFunc = sourceOptions[\"rndFunc\"];\n } else if ((0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.isString)(sourceOptions[\"rndFunc\"])) {\n this.options.rndFunc = globalThis[sourceOptions[\"rndFunc\"]] ?? this.options.rndFunc;\n }\n this.options.period = sourceOptions[\"period\"] ?? this.options.period;\n this.options.nbHarmonics = sourceOptions[\"nbHarmonics\"] ?? this.options.nbHarmonics;\n this.options.attenHarmonics = sourceOptions[\"attenHarmonics\"] ?? this.options.attenHarmonics;\n this.options.lowValue = sourceOptions[\"lowValue\"] ?? this.options.lowValue;\n this.options.highValue = sourceOptions[\"highValue\"] ?? this.options.highValue;\n }\n reset(particle) {\n delete particle.pathGen;\n delete particle.curveVelocity;\n }\n update() {}\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/curves/dist/browser/CurvesPathGenerator.js?\n}");
|
|
37
37
|
|
|
38
38
|
/***/ }
|
|
39
39
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Demo / Generator : https://particles.js.org/
|
|
5
5
|
* GitHub : https://www.github.com/matteobruni/tsparticles
|
|
6
6
|
* How to use? : Check the GitHub README
|
|
7
|
-
* v4.0.0-beta.
|
|
7
|
+
* v4.0.0-beta.3
|
|
8
8
|
*/
|
|
9
9
|
"use strict";
|
|
10
10
|
/*
|
|
@@ -23,7 +23,17 @@
|
|
|
23
23
|
\************************************************/
|
|
24
24
|
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
25
25
|
|
|
26
|
-
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ curvesPathName: () => (/* binding */ curvesPathName),\n/* harmony export */ loadCurvesPath: () => (/* binding */ loadCurvesPath)\n/* harmony export */ });\nconst curvesPathName = \"curvesPathGenerator\";\nasync function loadCurvesPath(engine) {\n engine.checkVersion(\"4.0.0-beta.
|
|
26
|
+
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ curvesPathName: () => (/* binding */ curvesPathName),\n/* harmony export */ loadCurvesPath: () => (/* binding */ loadCurvesPath)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_plugin_move__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\");\n\n\nconst curvesPathName = \"curvesPathGenerator\";\nasync function loadCurvesPath(engine) {\n engine.checkVersion(\"4.0.0-beta.3\");\n await engine.pluginManager.register(async (e)=>{\n const { ensureBaseMoverLoaded } = await Promise.resolve(/*! import() */).then(__webpack_require__.bind(__webpack_require__, /*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\"));\n ensureBaseMoverLoaded(e);\n e.pluginManager.addPathGenerator?.(curvesPathName, async (container)=>{\n const { CurvesPathGenerator } = await __webpack_require__.e(/*! import() */ \"paths_curves_dist_browser_CurvesPathGenerator_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./CurvesPathGenerator.js */ \"../../paths/curves/dist/browser/CurvesPathGenerator.js\"));\n return new CurvesPathGenerator(container);\n });\n });\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/curves/dist/browser/index.js?\n}");
|
|
27
|
+
|
|
28
|
+
/***/ },
|
|
29
|
+
|
|
30
|
+
/***/ "../../plugins/move/dist/browser/index.js"
|
|
31
|
+
/*!************************************************!*\
|
|
32
|
+
!*** ../../plugins/move/dist/browser/index.js ***!
|
|
33
|
+
\************************************************/
|
|
34
|
+
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
35
|
+
|
|
36
|
+
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ensureBaseMoverLoaded: () => (/* binding */ ensureBaseMoverLoaded),\n/* harmony export */ loadMovePlugin: () => (/* binding */ loadMovePlugin)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n\nasync function loadMovePlugin(engine) {\n engine.checkVersion(\"4.0.0-beta.3\");\n await engine.pluginManager.register(async (e)=>{\n const moveEngine = e, movePluginManager = moveEngine.pluginManager;\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.pathGenerators ??= new Map();\n movePluginManager.addPathGenerator = (name, generator)=>{\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.initializers.pathGenerators.set(name, generator);\n };\n movePluginManager.getPathGenerators = async (container, force = false)=>{\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.pathGenerators ??= new Map();\n return (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getItemMapFromInitializer)(container, movePluginManager.pathGenerators, movePluginManager.initializers.pathGenerators, force);\n };\n const { MovePlugin } = await __webpack_require__.e(/*! import() */ \"plugins_move_dist_browser_MovePlugin_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./MovePlugin.js */ \"../../plugins/move/dist/browser/MovePlugin.js\"));\n e.pluginManager.addPlugin(new MovePlugin(e.pluginManager));\n });\n}\nfunction ensureBaseMoverLoaded(e) {\n if (!e.pluginManager.addPathGenerator) {\n throw new Error(\"tsParticles Base Mover is not loaded\");\n }\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../plugins/move/dist/browser/index.js?\n}");
|
|
27
37
|
|
|
28
38
|
/***/ }
|
|
29
39
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Demo / Generator : https://particles.js.org/
|
|
5
5
|
* GitHub : https://www.github.com/matteobruni/tsparticles
|
|
6
6
|
* How to use? : Check the GitHub README
|
|
7
|
-
* v4.0.0-beta.
|
|
7
|
+
* v4.0.0-beta.3
|
|
8
8
|
*/
|
|
9
9
|
"use strict";
|
|
10
10
|
/*
|
|
@@ -53,7 +53,7 @@ eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpa
|
|
|
53
53
|
\******************************************************************/
|
|
54
54
|
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
55
55
|
|
|
56
|
-
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ NoiseFieldGenerator: () => (/* binding */ NoiseFieldGenerator)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n\nconst originCoordinate = 0, firstIndex = 0, empty = 0, optionsSizeOffset = 1, transformDefaultValues = {\n a: 1,\n b: 0,\n c: 0,\n d: 1,\n e: 0,\n f: 0\n}, defaultOptions = {\n draw: false,\n size: 20,\n increment: 0.004,\n columns: 0,\n rows: 0,\n layers: 0,\n width: 0,\n height: 0,\n factor: {\n angle: 0.02,\n length: 0.01\n },\n offset: {\n x: 40000,\n y: 40000,\n z: 40000\n }\n};\nclass NoiseFieldGenerator {\n container;\n field;\n noiseGen;\n noiseW;\n options;\n _res;\n constructor(container, noiseGen){\n this.container = container;\n this.noiseGen = noiseGen;\n this.field = [];\n this.noiseW = 0;\n this._res = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.origin;\n this.options = (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.deepExtend)({}, defaultOptions);\n }\n generate(particle) {\n const pos = particle.getPosition(), { size } = this.options, sizeFactor = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.identity / size, point = {\n x: Math.max(Math.floor(pos.x * sizeFactor), originCoordinate),\n y: Math.max(Math.floor(pos.y * sizeFactor), originCoordinate),\n z: Math.max(Math.floor(pos.z * sizeFactor), originCoordinate)\n }, { field } = this, fieldPoint = field[point.x]?.[point.y]?.[point.z];\n if (fieldPoint) {\n this._res.x = fieldPoint.x;\n this._res.y = fieldPoint.y;\n } else {\n this._res.x = 0;\n this._res.y = 0;\n }\n return this._res;\n }\n init() {\n this._setup();\n }\n reset() {}\n update() {\n this._calculateField();\n this.noiseW += this.options.increment;\n if (!this.options.draw) {\n return;\n }\n this.container.canvas.render.draw((ctx)=>{\n this._drawField(ctx);\n });\n }\n _calculateField() {\n const { field, noiseGen, options, noiseW } = this, lengthFactor = options.factor.length, angleFactor = options.factor.angle;\n for(let x = 0; x < options.columns; x++){\n const xColumn = field[x];\n if (!xColumn) {\n continue;\n }\n for(let y = 0; y < options.rows; y++){\n const yColumn = xColumn[y];\n if (!yColumn) {\n continue;\n }\n for(let z = 0; z < options.layers; z++){\n const cell = yColumn[z];\n if (!cell) {\n continue;\n }\n cell.length = noiseGen.noise4d(x * lengthFactor + options.offset.x, y * lengthFactor + options.offset.y, z * lengthFactor + options.offset.z, noiseW);\n cell.angle = noiseGen.noise4d(x * angleFactor, y * angleFactor, z * angleFactor, noiseW) * _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.doublePI;\n }\n }\n }\n }\n _drawField(ctx) {\n const { field, options } = this;\n for(let x = 0; x < options.columns; x++){\n const xColumn = field[x];\n if (!xColumn) {\n continue;\n }\n for(let y = 0; y < options.rows; y++){\n const yColumn = xColumn[y];\n if (!yColumn) {\n continue;\n }\n const cell = yColumn[firstIndex];\n if (!cell) {\n continue;\n }\n const { angle, length } = cell;\n ctx.setTransform(transformDefaultValues.a, transformDefaultValues.b, transformDefaultValues.c, transformDefaultValues.d, x * this.options.size, y * this.options.size);\n ctx.rotate(angle);\n ctx.strokeStyle = \"white\";\n ctx.beginPath();\n ctx.moveTo(originCoordinate, originCoordinate);\n ctx.lineTo(originCoordinate, this.options.size * length);\n ctx.stroke();\n ctx.setTransform(transformDefaultValues.a, transformDefaultValues.b, transformDefaultValues.c, transformDefaultValues.d, transformDefaultValues.e, transformDefaultValues.f);\n }\n }\n }\n _initField() {\n const { columns, rows, layers } = this.options;\n this.field = new Array(columns);\n for(let x = 0; x < columns; x++){\n const newX = new Array(rows);\n for(let y = 0; y < rows; y++){\n const newY = new Array(layers);\n for(let z = 0; z < layers; z++){\n newY[z] = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.origin;\n }\n newX[y] = newY;\n }\n this.field[x] = newX;\n }\n }\n _resetField() {\n const container = this.container, sourceOptions = container.actualOptions.particles.move.path.options, { options } = this;\n options.width = container.canvas.size.width;\n options.height = container.canvas.size.height;\n options.size = sourceOptions[\"size\"] > empty ? sourceOptions[\"size\"] : defaultOptions.size;\n options.increment = sourceOptions[\"increment\"] > empty ? sourceOptions[\"increment\"] : defaultOptions.increment;\n options.draw = !!sourceOptions[\"draw\"];\n const offset = sourceOptions[\"offset\"];\n options.offset.x = offset?.x ?? defaultOptions.offset.x;\n options.offset.y = offset?.y ?? defaultOptions.offset.y;\n options.offset.z = offset?.z ?? defaultOptions.offset.z;\n const factor = sourceOptions[\"factor\"];\n options.factor.angle = factor?.angle ?? defaultOptions.factor.angle;\n options.factor.length = factor?.length ?? defaultOptions.factor.length;\n options.seed = sourceOptions[\"seed\"];\n this.noiseGen.seed(options.seed ?? (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)());\n options.columns = Math.floor(options.width / options.size) + optionsSizeOffset;\n options.rows = Math.floor(options.height / options.size) + optionsSizeOffset;\n options.layers = Math.floor(container.zLayers / options.size) + optionsSizeOffset;\n this._initField();\n }\n _setup() {\n this.noiseW = 0;\n this._resetField();\n addEventListener(\"resize\", ()=>{\n this._resetField();\n });\n }\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../utils/noiseField/dist/browser/NoiseFieldGenerator.js?\n}");
|
|
56
|
+
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ NoiseFieldGenerator: () => (/* binding */ NoiseFieldGenerator)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_plugin_move__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\");\n\n\nconst originCoordinate = 0, firstIndex = 0, empty = 0, optionsSizeOffset = 1, transformDefaultValues = {\n a: 1,\n b: 0,\n c: 0,\n d: 1,\n e: 0,\n f: 0\n}, defaultOptions = {\n draw: false,\n size: 20,\n increment: 0.004,\n columns: 0,\n rows: 0,\n layers: 0,\n width: 0,\n height: 0,\n factor: {\n angle: 0.02,\n length: 0.01\n },\n offset: {\n x: 40000,\n y: 40000,\n z: 40000\n }\n};\nclass NoiseFieldGenerator {\n container;\n field;\n noiseGen;\n noiseW;\n options;\n _res;\n constructor(container, noiseGen){\n this.container = container;\n this.noiseGen = noiseGen;\n this.field = [];\n this.noiseW = 0;\n this._res = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.origin;\n this.options = (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.deepExtend)({}, defaultOptions);\n }\n generate(particle) {\n const pos = particle.getPosition(), { size } = this.options, sizeFactor = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.identity / size, point = {\n x: Math.max(Math.floor(pos.x * sizeFactor), originCoordinate),\n y: Math.max(Math.floor(pos.y * sizeFactor), originCoordinate),\n z: Math.max(Math.floor(pos.z * sizeFactor), originCoordinate)\n }, { field } = this, fieldPoint = field[point.x]?.[point.y]?.[point.z];\n if (fieldPoint) {\n this._res.x = fieldPoint.x;\n this._res.y = fieldPoint.y;\n } else {\n this._res.x = 0;\n this._res.y = 0;\n }\n return this._res;\n }\n init() {\n this._setup();\n }\n reset() {}\n update() {\n this._calculateField();\n this.noiseW += this.options.increment;\n if (!this.options.draw) {\n return;\n }\n this.container.canvas.render.draw((ctx)=>{\n this._drawField(ctx);\n });\n }\n _calculateField() {\n const { field, noiseGen, options, noiseW } = this, lengthFactor = options.factor.length, angleFactor = options.factor.angle;\n for(let x = 0; x < options.columns; x++){\n const xColumn = field[x];\n if (!xColumn) {\n continue;\n }\n for(let y = 0; y < options.rows; y++){\n const yColumn = xColumn[y];\n if (!yColumn) {\n continue;\n }\n for(let z = 0; z < options.layers; z++){\n const cell = yColumn[z];\n if (!cell) {\n continue;\n }\n cell.length = noiseGen.noise4d(x * lengthFactor + options.offset.x, y * lengthFactor + options.offset.y, z * lengthFactor + options.offset.z, noiseW);\n cell.angle = noiseGen.noise4d(x * angleFactor, y * angleFactor, z * angleFactor, noiseW) * _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.doublePI;\n }\n }\n }\n }\n _drawField(ctx) {\n const { field, options } = this;\n for(let x = 0; x < options.columns; x++){\n const xColumn = field[x];\n if (!xColumn) {\n continue;\n }\n for(let y = 0; y < options.rows; y++){\n const yColumn = xColumn[y];\n if (!yColumn) {\n continue;\n }\n const cell = yColumn[firstIndex];\n if (!cell) {\n continue;\n }\n const { angle, length } = cell;\n ctx.setTransform(transformDefaultValues.a, transformDefaultValues.b, transformDefaultValues.c, transformDefaultValues.d, x * this.options.size, y * this.options.size);\n ctx.rotate(angle);\n ctx.strokeStyle = \"white\";\n ctx.beginPath();\n ctx.moveTo(originCoordinate, originCoordinate);\n ctx.lineTo(originCoordinate, this.options.size * length);\n ctx.stroke();\n ctx.setTransform(transformDefaultValues.a, transformDefaultValues.b, transformDefaultValues.c, transformDefaultValues.d, transformDefaultValues.e, transformDefaultValues.f);\n }\n }\n }\n _initField() {\n const { columns, rows, layers } = this.options;\n this.field = new Array(columns);\n for(let x = 0; x < columns; x++){\n const newX = new Array(rows);\n for(let y = 0; y < rows; y++){\n const newY = new Array(layers);\n for(let z = 0; z < layers; z++){\n newY[z] = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.origin;\n }\n newX[y] = newY;\n }\n this.field[x] = newX;\n }\n }\n _resetField() {\n const container = this.container, sourceOptions = container.actualOptions.particles.move.path.options, { options } = this;\n options.width = container.canvas.size.width;\n options.height = container.canvas.size.height;\n options.size = sourceOptions[\"size\"] > empty ? sourceOptions[\"size\"] : defaultOptions.size;\n options.increment = sourceOptions[\"increment\"] > empty ? sourceOptions[\"increment\"] : defaultOptions.increment;\n options.draw = !!sourceOptions[\"draw\"];\n const offset = sourceOptions[\"offset\"];\n options.offset.x = offset?.x ?? defaultOptions.offset.x;\n options.offset.y = offset?.y ?? defaultOptions.offset.y;\n options.offset.z = offset?.z ?? defaultOptions.offset.z;\n const factor = sourceOptions[\"factor\"];\n options.factor.angle = factor?.angle ?? defaultOptions.factor.angle;\n options.factor.length = factor?.length ?? defaultOptions.factor.length;\n options.seed = sourceOptions[\"seed\"];\n this.noiseGen.seed(options.seed ?? (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)());\n options.columns = Math.floor(options.width / options.size) + optionsSizeOffset;\n options.rows = Math.floor(options.height / options.size) + optionsSizeOffset;\n options.layers = Math.floor(container.zLayers / options.size) + optionsSizeOffset;\n this._initField();\n }\n _setup() {\n this.noiseW = 0;\n this._resetField();\n addEventListener(\"resize\", ()=>{\n this._resetField();\n });\n }\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../utils/noiseField/dist/browser/NoiseFieldGenerator.js?\n}");
|
|
57
57
|
|
|
58
58
|
/***/ },
|
|
59
59
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Demo / Generator : https://particles.js.org/
|
|
5
5
|
* GitHub : https://www.github.com/matteobruni/tsparticles
|
|
6
6
|
* How to use? : Check the GitHub README
|
|
7
|
-
* v4.0.0-beta.
|
|
7
|
+
* v4.0.0-beta.3
|
|
8
8
|
*/
|
|
9
9
|
"use strict";
|
|
10
10
|
/*
|
|
@@ -23,7 +23,17 @@
|
|
|
23
23
|
\******************************************************/
|
|
24
24
|
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
25
25
|
|
|
26
|
-
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ fractalNoisePathName: () => (/* binding */ fractalNoisePathName),\n/* harmony export */ loadFractalNoisePath: () => (/* binding */ loadFractalNoisePath)\n/* harmony export */ });\nconst fractalNoisePathName = \"fractalNoise\";\nasync function loadFractalNoisePath(engine) {\n engine.checkVersion(\"4.0.0-beta.
|
|
26
|
+
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ fractalNoisePathName: () => (/* binding */ fractalNoisePathName),\n/* harmony export */ loadFractalNoisePath: () => (/* binding */ loadFractalNoisePath)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_plugin_move__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\");\n\n\nconst fractalNoisePathName = \"fractalNoise\";\nasync function loadFractalNoisePath(engine) {\n engine.checkVersion(\"4.0.0-beta.3\");\n await engine.pluginManager.register(async (e)=>{\n const { ensureBaseMoverLoaded } = await Promise.resolve(/*! import() */).then(__webpack_require__.bind(__webpack_require__, /*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\"));\n ensureBaseMoverLoaded(e);\n e.pluginManager.addPathGenerator?.(fractalNoisePathName, async (container)=>{\n const { FractalNoiseGenerator } = await __webpack_require__.e(/*! import() */ \"paths_fractalNoise_dist_browser_FractalNoiseGenerator_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./FractalNoiseGenerator.js */ \"../../paths/fractalNoise/dist/browser/FractalNoiseGenerator.js\"));\n return new FractalNoiseGenerator(container);\n });\n });\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/fractalNoise/dist/browser/index.js?\n}");
|
|
27
|
+
|
|
28
|
+
/***/ },
|
|
29
|
+
|
|
30
|
+
/***/ "../../plugins/move/dist/browser/index.js"
|
|
31
|
+
/*!************************************************!*\
|
|
32
|
+
!*** ../../plugins/move/dist/browser/index.js ***!
|
|
33
|
+
\************************************************/
|
|
34
|
+
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
35
|
+
|
|
36
|
+
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ensureBaseMoverLoaded: () => (/* binding */ ensureBaseMoverLoaded),\n/* harmony export */ loadMovePlugin: () => (/* binding */ loadMovePlugin)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n\nasync function loadMovePlugin(engine) {\n engine.checkVersion(\"4.0.0-beta.3\");\n await engine.pluginManager.register(async (e)=>{\n const moveEngine = e, movePluginManager = moveEngine.pluginManager;\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.pathGenerators ??= new Map();\n movePluginManager.addPathGenerator = (name, generator)=>{\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.initializers.pathGenerators.set(name, generator);\n };\n movePluginManager.getPathGenerators = async (container, force = false)=>{\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.pathGenerators ??= new Map();\n return (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getItemMapFromInitializer)(container, movePluginManager.pathGenerators, movePluginManager.initializers.pathGenerators, force);\n };\n const { MovePlugin } = await __webpack_require__.e(/*! import() */ \"plugins_move_dist_browser_MovePlugin_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./MovePlugin.js */ \"../../plugins/move/dist/browser/MovePlugin.js\"));\n e.pluginManager.addPlugin(new MovePlugin(e.pluginManager));\n });\n}\nfunction ensureBaseMoverLoaded(e) {\n if (!e.pluginManager.addPathGenerator) {\n throw new Error(\"tsParticles Base Mover is not loaded\");\n }\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../plugins/move/dist/browser/index.js?\n}");
|
|
27
37
|
|
|
28
38
|
/***/ }
|
|
29
39
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Demo / Generator : https://particles.js.org/
|
|
5
5
|
* GitHub : https://www.github.com/matteobruni/tsparticles
|
|
6
6
|
* How to use? : Check the GitHub README
|
|
7
|
-
* v4.0.0-beta.
|
|
7
|
+
* v4.0.0-beta.3
|
|
8
8
|
*/
|
|
9
9
|
"use strict";
|
|
10
10
|
/*
|
|
@@ -23,7 +23,17 @@
|
|
|
23
23
|
\**********************************************************/
|
|
24
24
|
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
25
25
|
|
|
26
|
-
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ GridPathGenerator: () => (/* binding */ GridPathGenerator)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n\nconst dirs = [\n _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.create(_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.identity, _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.originPoint.y),\n _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.create(_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.originPoint.x, _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.identity),\n _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.create(-_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.identity, _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.originPoint.y),\n _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.create(_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.originPoint.x, -_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.identity)\n], opposite = [\n 2,\n 3,\n 0,\n 1\n], minLength = 0;\nclass GridPathGenerator {\n options;\n _container;\n _res;\n constructor(container){\n this._container = container;\n this._res = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.origin;\n this.options = {\n cellSize: 40,\n graph: undefined,\n autoMaze: false\n };\n }\n generate(p) {\n const size = this.options.cellSize;\n p.grid ??= {\n direction: Math.trunc((0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() * dirs.length),\n speed: p.velocity.length,\n cellPosition: {\n x: Math.floor(p.position.x / size),\n y: Math.floor(p.position.y / size)\n }\n };\n const grid = p.grid, c = {\n x: Math.floor(p.position.x / size),\n y: Math.floor(p.position.y / size)\n };\n if (c.x !== grid.cellPosition.x || c.y !== grid.cellPosition.y) {\n grid.cellPosition.x = c.x;\n grid.cellPosition.y = c.y;\n const key = `${c.x},${c.y}`, allowed = this.options.graph?.[key];\n if (allowed && allowed.length > minLength) {\n grid.direction = allowed[Math.trunc((0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() * allowed.length)];\n } else if (!this.options.graph) {\n const turn = Math.trunc((0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() * 3) - 1;\n grid.direction = (grid.direction + turn + 4) % dirs.length;\n }\n }\n p.velocity.x = 0;\n p.velocity.y = 0;\n const d = dirs[grid.direction];\n this._res.x = d.x * grid.speed;\n this._res.y = d.y * grid.speed;\n return this._res;\n }\n init() {\n const source = this._container.actualOptions.particles.move.path.options;\n this.options.cellSize = source[\"cellSize\"] ?? this.options.cellSize;\n this.options.autoMaze = source[\"autoMaze\"] ?? this.options.autoMaze;\n this.options.graph = source[\"graph\"];\n if (this.options.autoMaze) {\n const canvas = this._container.canvas.size, cellSize = this.options.cellSize, size = {\n width: Math.ceil(canvas.width / cellSize),\n height: Math.ceil(canvas.height / cellSize)\n };\n this.options.graph = this._generateMazeGraph(size);\n }\n }\n reset(p) {\n delete p.grid;\n }\n update() {}\n _generateMazeGraph({ height, width }) {\n const graph = {}, visited = [];\n for(let y = 0; y < height; y++){\n visited[y] = [];\n }\n const stack = [\n {\n x: _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.originPoint.x,\n y: _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.originPoint.y\n }\n ];\n while(stack.length > 0){\n const { x, y } = stack[stack.length - 1];\n if (!visited[y][x]) {\n visited[y][x] = true;\n }\n const dirsOrder = [\n 0,\n 1,\n 2,\n 3\n ].sort(()=>(0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() - 0.5);\n let moved = false;\n for (const d of dirsOrder){\n const n = {\n x: x + (d === 0 ? 1 : d === 2 ? -1 : 0),\n y: y + (d === 1 ? 1 : d === 3 ? -1 : 0)\n };\n if (n.x < 0 || n.y < 0 || n.x >= width || n.y >= height) {\n continue;\n }\n if (!visited[n.y][n.x]) {\n const key = `${x},${y}`, nKey = `${n.x},${n.y}`;\n graph[key] ??= [];\n graph[nKey] ??= [];\n graph[key].push(d);\n graph[nKey].push(opposite[d]);\n stack.push(n);\n moved = true;\n break;\n }\n }\n if (!moved) {\n stack.pop();\n }\n }\n return graph;\n }\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/grid/dist/browser/GridPathGenerator.js?\n}");
|
|
26
|
+
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ GridPathGenerator: () => (/* binding */ GridPathGenerator)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_plugin_move__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\");\n\n\nconst dirs = [\n _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.create(_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.identity, _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.originPoint.y),\n _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.create(_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.originPoint.x, _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.identity),\n _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.create(-_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.identity, _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.originPoint.y),\n _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.create(_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.originPoint.x, -_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.identity)\n], opposite = [\n 2,\n 3,\n 0,\n 1\n], minLength = 0;\nclass GridPathGenerator {\n options;\n _container;\n _res;\n constructor(container){\n this._container = container;\n this._res = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.origin;\n this.options = {\n cellSize: 40,\n graph: undefined,\n autoMaze: false\n };\n }\n generate(p) {\n const size = this.options.cellSize;\n p.grid ??= {\n direction: Math.trunc((0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() * dirs.length),\n speed: p.velocity.length,\n cellPosition: {\n x: Math.floor(p.position.x / size),\n y: Math.floor(p.position.y / size)\n }\n };\n const grid = p.grid, c = {\n x: Math.floor(p.position.x / size),\n y: Math.floor(p.position.y / size)\n };\n if (c.x !== grid.cellPosition.x || c.y !== grid.cellPosition.y) {\n grid.cellPosition.x = c.x;\n grid.cellPosition.y = c.y;\n const key = `${c.x},${c.y}`, allowed = this.options.graph?.[key];\n if (allowed && allowed.length > minLength) {\n grid.direction = allowed[Math.trunc((0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() * allowed.length)];\n } else if (!this.options.graph) {\n const turn = Math.trunc((0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() * 3) - 1;\n grid.direction = (grid.direction + turn + 4) % dirs.length;\n }\n }\n p.velocity.x = 0;\n p.velocity.y = 0;\n const d = dirs[grid.direction];\n this._res.x = d.x * grid.speed;\n this._res.y = d.y * grid.speed;\n return this._res;\n }\n init() {\n const source = this._container.actualOptions.particles.move.path.options;\n this.options.cellSize = source[\"cellSize\"] ?? this.options.cellSize;\n this.options.autoMaze = source[\"autoMaze\"] ?? this.options.autoMaze;\n this.options.graph = source[\"graph\"];\n if (this.options.autoMaze) {\n const canvas = this._container.canvas.size, cellSize = this.options.cellSize, size = {\n width: Math.ceil(canvas.width / cellSize),\n height: Math.ceil(canvas.height / cellSize)\n };\n this.options.graph = this._generateMazeGraph(size);\n }\n }\n reset(p) {\n delete p.grid;\n }\n update() {}\n _generateMazeGraph({ height, width }) {\n const graph = {}, visited = [];\n for(let y = 0; y < height; y++){\n visited[y] = [];\n }\n const stack = [\n {\n x: _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.originPoint.x,\n y: _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.originPoint.y\n }\n ];\n while(stack.length > 0){\n const { x, y } = stack[stack.length - 1];\n if (!visited[y][x]) {\n visited[y][x] = true;\n }\n const dirsOrder = [\n 0,\n 1,\n 2,\n 3\n ].sort(()=>(0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() - 0.5);\n let moved = false;\n for (const d of dirsOrder){\n const n = {\n x: x + (d === 0 ? 1 : d === 2 ? -1 : 0),\n y: y + (d === 1 ? 1 : d === 3 ? -1 : 0)\n };\n if (n.x < 0 || n.y < 0 || n.x >= width || n.y >= height) {\n continue;\n }\n if (!visited[n.y][n.x]) {\n const key = `${x},${y}`, nKey = `${n.x},${n.y}`;\n graph[key] ??= [];\n graph[nKey] ??= [];\n graph[key].push(d);\n graph[nKey].push(opposite[d]);\n stack.push(n);\n moved = true;\n break;\n }\n }\n if (!moved) {\n stack.pop();\n }\n }\n return graph;\n }\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/grid/dist/browser/GridPathGenerator.js?\n}");
|
|
27
|
+
|
|
28
|
+
/***/ },
|
|
29
|
+
|
|
30
|
+
/***/ "../../plugins/move/dist/browser/index.js"
|
|
31
|
+
/*!************************************************!*\
|
|
32
|
+
!*** ../../plugins/move/dist/browser/index.js ***!
|
|
33
|
+
\************************************************/
|
|
34
|
+
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
35
|
+
|
|
36
|
+
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ensureBaseMoverLoaded: () => (/* binding */ ensureBaseMoverLoaded),\n/* harmony export */ loadMovePlugin: () => (/* binding */ loadMovePlugin)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n\nasync function loadMovePlugin(engine) {\n engine.checkVersion(\"4.0.0-beta.3\");\n await engine.pluginManager.register(async (e)=>{\n const moveEngine = e, movePluginManager = moveEngine.pluginManager;\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.pathGenerators ??= new Map();\n movePluginManager.addPathGenerator = (name, generator)=>{\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.initializers.pathGenerators.set(name, generator);\n };\n movePluginManager.getPathGenerators = async (container, force = false)=>{\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.pathGenerators ??= new Map();\n return (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getItemMapFromInitializer)(container, movePluginManager.pathGenerators, movePluginManager.initializers.pathGenerators, force);\n };\n const { MovePlugin } = await __webpack_require__.e(/*! import() */ \"plugins_move_dist_browser_MovePlugin_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./MovePlugin.js */ \"../../plugins/move/dist/browser/MovePlugin.js\"));\n e.pluginManager.addPlugin(new MovePlugin(e.pluginManager));\n });\n}\nfunction ensureBaseMoverLoaded(e) {\n if (!e.pluginManager.addPathGenerator) {\n throw new Error(\"tsParticles Base Mover is not loaded\");\n }\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../plugins/move/dist/browser/index.js?\n}");
|
|
27
37
|
|
|
28
38
|
/***/ }
|
|
29
39
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Demo / Generator : https://particles.js.org/
|
|
5
5
|
* GitHub : https://www.github.com/matteobruni/tsparticles
|
|
6
6
|
* How to use? : Check the GitHub README
|
|
7
|
-
* v4.0.0-beta.
|
|
7
|
+
* v4.0.0-beta.3
|
|
8
8
|
*/
|
|
9
9
|
"use strict";
|
|
10
10
|
/*
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
\**********************************************/
|
|
24
24
|
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
25
25
|
|
|
26
|
-
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ gridPathName: () => (/* binding */ gridPathName),\n/* harmony export */ loadGridPath: () => (/* binding */ loadGridPath)\n/* harmony export */ });\nconst gridPathName = \"gridPathGenerator\";\nasync function loadGridPath(engine) {\n engine.checkVersion(\"4.0.0-beta.
|
|
26
|
+
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ gridPathName: () => (/* binding */ gridPathName),\n/* harmony export */ loadGridPath: () => (/* binding */ loadGridPath)\n/* harmony export */ });\nconst gridPathName = \"gridPathGenerator\";\nasync function loadGridPath(engine) {\n engine.checkVersion(\"4.0.0-beta.3\");\n await engine.pluginManager.register(async (e)=>{\n const { ensureBaseMoverLoaded } = await __webpack_require__.e(/*! import() */ \"plugins_move_dist_browser_index_js\").then(__webpack_require__.bind(__webpack_require__, /*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\"));\n ensureBaseMoverLoaded(e);\n e.pluginManager.addPathGenerator?.(gridPathName, async (container)=>{\n const { GridPathGenerator } = await __webpack_require__.e(/*! import() */ \"paths_grid_dist_browser_GridPathGenerator_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./GridPathGenerator.js */ \"../../paths/grid/dist/browser/GridPathGenerator.js\"));\n return new GridPathGenerator(container);\n });\n });\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/grid/dist/browser/index.js?\n}");
|
|
27
27
|
|
|
28
28
|
/***/ }
|
|
29
29
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Demo / Generator : https://particles.js.org/
|
|
5
5
|
* GitHub : https://www.github.com/matteobruni/tsparticles
|
|
6
6
|
* How to use? : Check the GitHub README
|
|
7
|
-
* v4.0.0-beta.
|
|
7
|
+
* v4.0.0-beta.3
|
|
8
8
|
*/
|
|
9
9
|
"use strict";
|
|
10
10
|
/*
|
|
@@ -23,7 +23,17 @@
|
|
|
23
23
|
\**********************************************************/
|
|
24
24
|
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
25
25
|
|
|
26
|
-
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ LevyPathGenerator: () => (/* binding */ LevyPathGenerator)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n\nconst defaultScale = 1, defaultLevyAlpha = 1.5;\nclass LevyPathGenerator {\n options;\n _container;\n _res;\n constructor(container){\n this._container = container;\n this._res = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.origin;\n this.options = {\n alpha: defaultLevyAlpha,\n scale: defaultScale,\n maxStep: 10\n };\n }\n generate(p) {\n p.levy ??= {\n angle: (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() * Math.PI * 2,\n baseSpeed: p.velocity.length\n };\n const opts = this.options, l = p.levy;\n l.angle += ((0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() - 0.5) * 0.2;\n const u = Math.max((0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)(), 1e-6), scale = opts.scale ?? defaultScale, levyAlpha = opts.alpha ?? defaultLevyAlpha;\n let step = scale / Math.pow(u, 1 / levyAlpha);\n if (opts.maxStep !== undefined) {\n step = Math.min(step, opts.maxStep);\n }\n const speed = l.baseSpeed * step;\n p.velocity.x = 0;\n p.velocity.y = 0;\n this._res.length = speed;\n this._res.angle = l.angle;\n return this._res;\n }\n init() {\n const source = this._container.actualOptions.particles.move.path.options;\n this.options.alpha = source[\"alpha\"] ?? this.options.alpha;\n this.options.scale = source[\"scale\"] ?? this.options.scale;\n this.options.maxStep = source[\"maxStep\"] ?? this.options.maxStep;\n }\n reset(p) {\n delete p.levy;\n }\n update() {}\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/levy/dist/browser/LevyPathGenerator.js?\n}");
|
|
26
|
+
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ LevyPathGenerator: () => (/* binding */ LevyPathGenerator)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_plugin_move__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\");\n\n\nconst defaultScale = 1, defaultLevyAlpha = 1.5;\nclass LevyPathGenerator {\n options;\n _container;\n _res;\n constructor(container){\n this._container = container;\n this._res = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.origin;\n this.options = {\n alpha: defaultLevyAlpha,\n scale: defaultScale,\n maxStep: 10\n };\n }\n generate(p) {\n p.levy ??= {\n angle: (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() * Math.PI * 2,\n baseSpeed: p.velocity.length\n };\n const opts = this.options, l = p.levy;\n l.angle += ((0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() - 0.5) * 0.2;\n const u = Math.max((0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)(), 1e-6), scale = opts.scale ?? defaultScale, levyAlpha = opts.alpha ?? defaultLevyAlpha;\n let step = scale / Math.pow(u, 1 / levyAlpha);\n if (opts.maxStep !== undefined) {\n step = Math.min(step, opts.maxStep);\n }\n const speed = l.baseSpeed * step;\n p.velocity.x = 0;\n p.velocity.y = 0;\n this._res.length = speed;\n this._res.angle = l.angle;\n return this._res;\n }\n init() {\n const source = this._container.actualOptions.particles.move.path.options;\n this.options.alpha = source[\"alpha\"] ?? this.options.alpha;\n this.options.scale = source[\"scale\"] ?? this.options.scale;\n this.options.maxStep = source[\"maxStep\"] ?? this.options.maxStep;\n }\n reset(p) {\n delete p.levy;\n }\n update() {}\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/levy/dist/browser/LevyPathGenerator.js?\n}");
|
|
27
|
+
|
|
28
|
+
/***/ },
|
|
29
|
+
|
|
30
|
+
/***/ "../../plugins/move/dist/browser/index.js"
|
|
31
|
+
/*!************************************************!*\
|
|
32
|
+
!*** ../../plugins/move/dist/browser/index.js ***!
|
|
33
|
+
\************************************************/
|
|
34
|
+
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
35
|
+
|
|
36
|
+
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ensureBaseMoverLoaded: () => (/* binding */ ensureBaseMoverLoaded),\n/* harmony export */ loadMovePlugin: () => (/* binding */ loadMovePlugin)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n\nasync function loadMovePlugin(engine) {\n engine.checkVersion(\"4.0.0-beta.3\");\n await engine.pluginManager.register(async (e)=>{\n const moveEngine = e, movePluginManager = moveEngine.pluginManager;\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.pathGenerators ??= new Map();\n movePluginManager.addPathGenerator = (name, generator)=>{\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.initializers.pathGenerators.set(name, generator);\n };\n movePluginManager.getPathGenerators = async (container, force = false)=>{\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.pathGenerators ??= new Map();\n return (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getItemMapFromInitializer)(container, movePluginManager.pathGenerators, movePluginManager.initializers.pathGenerators, force);\n };\n const { MovePlugin } = await __webpack_require__.e(/*! import() */ \"plugins_move_dist_browser_MovePlugin_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./MovePlugin.js */ \"../../plugins/move/dist/browser/MovePlugin.js\"));\n e.pluginManager.addPlugin(new MovePlugin(e.pluginManager));\n });\n}\nfunction ensureBaseMoverLoaded(e) {\n if (!e.pluginManager.addPathGenerator) {\n throw new Error(\"tsParticles Base Mover is not loaded\");\n }\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../plugins/move/dist/browser/index.js?\n}");
|
|
27
37
|
|
|
28
38
|
/***/ }
|
|
29
39
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Demo / Generator : https://particles.js.org/
|
|
5
5
|
* GitHub : https://www.github.com/matteobruni/tsparticles
|
|
6
6
|
* How to use? : Check the GitHub README
|
|
7
|
-
* v4.0.0-beta.
|
|
7
|
+
* v4.0.0-beta.3
|
|
8
8
|
*/
|
|
9
9
|
"use strict";
|
|
10
10
|
/*
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
\**********************************************/
|
|
24
24
|
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
25
25
|
|
|
26
|
-
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ levyPathName: () => (/* binding */ levyPathName),\n/* harmony export */ loadLevyPath: () => (/* binding */ loadLevyPath)\n/* harmony export */ });\nconst levyPathName = \"levyPathGenerator\";\nasync function loadLevyPath(engine) {\n engine.checkVersion(\"4.0.0-beta.
|
|
26
|
+
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ levyPathName: () => (/* binding */ levyPathName),\n/* harmony export */ loadLevyPath: () => (/* binding */ loadLevyPath)\n/* harmony export */ });\nconst levyPathName = \"levyPathGenerator\";\nasync function loadLevyPath(engine) {\n engine.checkVersion(\"4.0.0-beta.3\");\n await engine.pluginManager.register(async (e)=>{\n const { ensureBaseMoverLoaded } = await __webpack_require__.e(/*! import() */ \"plugins_move_dist_browser_index_js\").then(__webpack_require__.bind(__webpack_require__, /*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\"));\n ensureBaseMoverLoaded(e);\n e.pluginManager.addPathGenerator?.(levyPathName, async (container)=>{\n const { LevyPathGenerator } = await __webpack_require__.e(/*! import() */ \"paths_levy_dist_browser_LevyPathGenerator_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./LevyPathGenerator.js */ \"../../paths/levy/dist/browser/LevyPathGenerator.js\"));\n return new LevyPathGenerator(container);\n });\n });\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/levy/dist/browser/index.js?\n}");
|
|
27
27
|
|
|
28
28
|
/***/ }
|
|
29
29
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Demo / Generator : https://particles.js.org/
|
|
5
5
|
* GitHub : https://www.github.com/matteobruni/tsparticles
|
|
6
6
|
* How to use? : Check the GitHub README
|
|
7
|
-
* v4.0.0-beta.
|
|
7
|
+
* v4.0.0-beta.3
|
|
8
8
|
*/
|
|
9
9
|
"use strict";
|
|
10
10
|
/*
|
|
@@ -33,7 +33,7 @@ eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpa
|
|
|
33
33
|
\******************************************************************/
|
|
34
34
|
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
35
35
|
|
|
36
|
-
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ NoiseFieldGenerator: () => (/* binding */ NoiseFieldGenerator)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n\nconst originCoordinate = 0, firstIndex = 0, empty = 0, optionsSizeOffset = 1, transformDefaultValues = {\n a: 1,\n b: 0,\n c: 0,\n d: 1,\n e: 0,\n f: 0\n}, defaultOptions = {\n draw: false,\n size: 20,\n increment: 0.004,\n columns: 0,\n rows: 0,\n layers: 0,\n width: 0,\n height: 0,\n factor: {\n angle: 0.02,\n length: 0.01\n },\n offset: {\n x: 40000,\n y: 40000,\n z: 40000\n }\n};\nclass NoiseFieldGenerator {\n container;\n field;\n noiseGen;\n noiseW;\n options;\n _res;\n constructor(container, noiseGen){\n this.container = container;\n this.noiseGen = noiseGen;\n this.field = [];\n this.noiseW = 0;\n this._res = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.origin;\n this.options = (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.deepExtend)({}, defaultOptions);\n }\n generate(particle) {\n const pos = particle.getPosition(), { size } = this.options, sizeFactor = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.identity / size, point = {\n x: Math.max(Math.floor(pos.x * sizeFactor), originCoordinate),\n y: Math.max(Math.floor(pos.y * sizeFactor), originCoordinate),\n z: Math.max(Math.floor(pos.z * sizeFactor), originCoordinate)\n }, { field } = this, fieldPoint = field[point.x]?.[point.y]?.[point.z];\n if (fieldPoint) {\n this._res.x = fieldPoint.x;\n this._res.y = fieldPoint.y;\n } else {\n this._res.x = 0;\n this._res.y = 0;\n }\n return this._res;\n }\n init() {\n this._setup();\n }\n reset() {}\n update() {\n this._calculateField();\n this.noiseW += this.options.increment;\n if (!this.options.draw) {\n return;\n }\n this.container.canvas.render.draw((ctx)=>{\n this._drawField(ctx);\n });\n }\n _calculateField() {\n const { field, noiseGen, options, noiseW } = this, lengthFactor = options.factor.length, angleFactor = options.factor.angle;\n for(let x = 0; x < options.columns; x++){\n const xColumn = field[x];\n if (!xColumn) {\n continue;\n }\n for(let y = 0; y < options.rows; y++){\n const yColumn = xColumn[y];\n if (!yColumn) {\n continue;\n }\n for(let z = 0; z < options.layers; z++){\n const cell = yColumn[z];\n if (!cell) {\n continue;\n }\n cell.length = noiseGen.noise4d(x * lengthFactor + options.offset.x, y * lengthFactor + options.offset.y, z * lengthFactor + options.offset.z, noiseW);\n cell.angle = noiseGen.noise4d(x * angleFactor, y * angleFactor, z * angleFactor, noiseW) * _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.doublePI;\n }\n }\n }\n }\n _drawField(ctx) {\n const { field, options } = this;\n for(let x = 0; x < options.columns; x++){\n const xColumn = field[x];\n if (!xColumn) {\n continue;\n }\n for(let y = 0; y < options.rows; y++){\n const yColumn = xColumn[y];\n if (!yColumn) {\n continue;\n }\n const cell = yColumn[firstIndex];\n if (!cell) {\n continue;\n }\n const { angle, length } = cell;\n ctx.setTransform(transformDefaultValues.a, transformDefaultValues.b, transformDefaultValues.c, transformDefaultValues.d, x * this.options.size, y * this.options.size);\n ctx.rotate(angle);\n ctx.strokeStyle = \"white\";\n ctx.beginPath();\n ctx.moveTo(originCoordinate, originCoordinate);\n ctx.lineTo(originCoordinate, this.options.size * length);\n ctx.stroke();\n ctx.setTransform(transformDefaultValues.a, transformDefaultValues.b, transformDefaultValues.c, transformDefaultValues.d, transformDefaultValues.e, transformDefaultValues.f);\n }\n }\n }\n _initField() {\n const { columns, rows, layers } = this.options;\n this.field = new Array(columns);\n for(let x = 0; x < columns; x++){\n const newX = new Array(rows);\n for(let y = 0; y < rows; y++){\n const newY = new Array(layers);\n for(let z = 0; z < layers; z++){\n newY[z] = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.origin;\n }\n newX[y] = newY;\n }\n this.field[x] = newX;\n }\n }\n _resetField() {\n const container = this.container, sourceOptions = container.actualOptions.particles.move.path.options, { options } = this;\n options.width = container.canvas.size.width;\n options.height = container.canvas.size.height;\n options.size = sourceOptions[\"size\"] > empty ? sourceOptions[\"size\"] : defaultOptions.size;\n options.increment = sourceOptions[\"increment\"] > empty ? sourceOptions[\"increment\"] : defaultOptions.increment;\n options.draw = !!sourceOptions[\"draw\"];\n const offset = sourceOptions[\"offset\"];\n options.offset.x = offset?.x ?? defaultOptions.offset.x;\n options.offset.y = offset?.y ?? defaultOptions.offset.y;\n options.offset.z = offset?.z ?? defaultOptions.offset.z;\n const factor = sourceOptions[\"factor\"];\n options.factor.angle = factor?.angle ?? defaultOptions.factor.angle;\n options.factor.length = factor?.length ?? defaultOptions.factor.length;\n options.seed = sourceOptions[\"seed\"];\n this.noiseGen.seed(options.seed ?? (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)());\n options.columns = Math.floor(options.width / options.size) + optionsSizeOffset;\n options.rows = Math.floor(options.height / options.size) + optionsSizeOffset;\n options.layers = Math.floor(container.zLayers / options.size) + optionsSizeOffset;\n this._initField();\n }\n _setup() {\n this.noiseW = 0;\n this._resetField();\n addEventListener(\"resize\", ()=>{\n this._resetField();\n });\n }\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../utils/noiseField/dist/browser/NoiseFieldGenerator.js?\n}");
|
|
36
|
+
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ NoiseFieldGenerator: () => (/* binding */ NoiseFieldGenerator)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_plugin_move__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\");\n\n\nconst originCoordinate = 0, firstIndex = 0, empty = 0, optionsSizeOffset = 1, transformDefaultValues = {\n a: 1,\n b: 0,\n c: 0,\n d: 1,\n e: 0,\n f: 0\n}, defaultOptions = {\n draw: false,\n size: 20,\n increment: 0.004,\n columns: 0,\n rows: 0,\n layers: 0,\n width: 0,\n height: 0,\n factor: {\n angle: 0.02,\n length: 0.01\n },\n offset: {\n x: 40000,\n y: 40000,\n z: 40000\n }\n};\nclass NoiseFieldGenerator {\n container;\n field;\n noiseGen;\n noiseW;\n options;\n _res;\n constructor(container, noiseGen){\n this.container = container;\n this.noiseGen = noiseGen;\n this.field = [];\n this.noiseW = 0;\n this._res = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.origin;\n this.options = (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.deepExtend)({}, defaultOptions);\n }\n generate(particle) {\n const pos = particle.getPosition(), { size } = this.options, sizeFactor = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.identity / size, point = {\n x: Math.max(Math.floor(pos.x * sizeFactor), originCoordinate),\n y: Math.max(Math.floor(pos.y * sizeFactor), originCoordinate),\n z: Math.max(Math.floor(pos.z * sizeFactor), originCoordinate)\n }, { field } = this, fieldPoint = field[point.x]?.[point.y]?.[point.z];\n if (fieldPoint) {\n this._res.x = fieldPoint.x;\n this._res.y = fieldPoint.y;\n } else {\n this._res.x = 0;\n this._res.y = 0;\n }\n return this._res;\n }\n init() {\n this._setup();\n }\n reset() {}\n update() {\n this._calculateField();\n this.noiseW += this.options.increment;\n if (!this.options.draw) {\n return;\n }\n this.container.canvas.render.draw((ctx)=>{\n this._drawField(ctx);\n });\n }\n _calculateField() {\n const { field, noiseGen, options, noiseW } = this, lengthFactor = options.factor.length, angleFactor = options.factor.angle;\n for(let x = 0; x < options.columns; x++){\n const xColumn = field[x];\n if (!xColumn) {\n continue;\n }\n for(let y = 0; y < options.rows; y++){\n const yColumn = xColumn[y];\n if (!yColumn) {\n continue;\n }\n for(let z = 0; z < options.layers; z++){\n const cell = yColumn[z];\n if (!cell) {\n continue;\n }\n cell.length = noiseGen.noise4d(x * lengthFactor + options.offset.x, y * lengthFactor + options.offset.y, z * lengthFactor + options.offset.z, noiseW);\n cell.angle = noiseGen.noise4d(x * angleFactor, y * angleFactor, z * angleFactor, noiseW) * _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.doublePI;\n }\n }\n }\n }\n _drawField(ctx) {\n const { field, options } = this;\n for(let x = 0; x < options.columns; x++){\n const xColumn = field[x];\n if (!xColumn) {\n continue;\n }\n for(let y = 0; y < options.rows; y++){\n const yColumn = xColumn[y];\n if (!yColumn) {\n continue;\n }\n const cell = yColumn[firstIndex];\n if (!cell) {\n continue;\n }\n const { angle, length } = cell;\n ctx.setTransform(transformDefaultValues.a, transformDefaultValues.b, transformDefaultValues.c, transformDefaultValues.d, x * this.options.size, y * this.options.size);\n ctx.rotate(angle);\n ctx.strokeStyle = \"white\";\n ctx.beginPath();\n ctx.moveTo(originCoordinate, originCoordinate);\n ctx.lineTo(originCoordinate, this.options.size * length);\n ctx.stroke();\n ctx.setTransform(transformDefaultValues.a, transformDefaultValues.b, transformDefaultValues.c, transformDefaultValues.d, transformDefaultValues.e, transformDefaultValues.f);\n }\n }\n }\n _initField() {\n const { columns, rows, layers } = this.options;\n this.field = new Array(columns);\n for(let x = 0; x < columns; x++){\n const newX = new Array(rows);\n for(let y = 0; y < rows; y++){\n const newY = new Array(layers);\n for(let z = 0; z < layers; z++){\n newY[z] = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.origin;\n }\n newX[y] = newY;\n }\n this.field[x] = newX;\n }\n }\n _resetField() {\n const container = this.container, sourceOptions = container.actualOptions.particles.move.path.options, { options } = this;\n options.width = container.canvas.size.width;\n options.height = container.canvas.size.height;\n options.size = sourceOptions[\"size\"] > empty ? sourceOptions[\"size\"] : defaultOptions.size;\n options.increment = sourceOptions[\"increment\"] > empty ? sourceOptions[\"increment\"] : defaultOptions.increment;\n options.draw = !!sourceOptions[\"draw\"];\n const offset = sourceOptions[\"offset\"];\n options.offset.x = offset?.x ?? defaultOptions.offset.x;\n options.offset.y = offset?.y ?? defaultOptions.offset.y;\n options.offset.z = offset?.z ?? defaultOptions.offset.z;\n const factor = sourceOptions[\"factor\"];\n options.factor.angle = factor?.angle ?? defaultOptions.factor.angle;\n options.factor.length = factor?.length ?? defaultOptions.factor.length;\n options.seed = sourceOptions[\"seed\"];\n this.noiseGen.seed(options.seed ?? (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)());\n options.columns = Math.floor(options.width / options.size) + optionsSizeOffset;\n options.rows = Math.floor(options.height / options.size) + optionsSizeOffset;\n options.layers = Math.floor(container.zLayers / options.size) + optionsSizeOffset;\n this._initField();\n }\n _setup() {\n this.noiseW = 0;\n this._resetField();\n addEventListener(\"resize\", ()=>{\n this._resetField();\n });\n }\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../utils/noiseField/dist/browser/NoiseFieldGenerator.js?\n}");
|
|
37
37
|
|
|
38
38
|
/***/ },
|
|
39
39
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Demo / Generator : https://particles.js.org/
|
|
5
5
|
* GitHub : https://www.github.com/matteobruni/tsparticles
|
|
6
6
|
* How to use? : Check the GitHub README
|
|
7
|
-
* v4.0.0-beta.
|
|
7
|
+
* v4.0.0-beta.3
|
|
8
8
|
*/
|
|
9
9
|
"use strict";
|
|
10
10
|
/*
|
|
@@ -23,7 +23,17 @@
|
|
|
23
23
|
\*****************************************************/
|
|
24
24
|
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
25
25
|
|
|
26
|
-
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadPerlinNoisePath: () => (/* binding */ loadPerlinNoisePath),\n/* harmony export */ perlinNoisePathName: () => (/* binding */ perlinNoisePathName)\n/* harmony export */ });\nconst perlinNoisePathName = \"perlinNoise\";\nasync function loadPerlinNoisePath(engine) {\n engine.checkVersion(\"4.0.0-beta.
|
|
26
|
+
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadPerlinNoisePath: () => (/* binding */ loadPerlinNoisePath),\n/* harmony export */ perlinNoisePathName: () => (/* binding */ perlinNoisePathName)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_plugin_move__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\");\n\n\nconst perlinNoisePathName = \"perlinNoise\";\nasync function loadPerlinNoisePath(engine) {\n engine.checkVersion(\"4.0.0-beta.3\");\n await engine.pluginManager.register(async (e)=>{\n const { ensureBaseMoverLoaded } = await Promise.resolve(/*! import() */).then(__webpack_require__.bind(__webpack_require__, /*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\"));\n ensureBaseMoverLoaded(e);\n e.pluginManager.addPathGenerator?.(perlinNoisePathName, async (container)=>{\n const { PerlinNoiseGenerator } = await __webpack_require__.e(/*! import() */ \"paths_perlinNoise_dist_browser_PerlinNoiseGenerator_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./PerlinNoiseGenerator.js */ \"../../paths/perlinNoise/dist/browser/PerlinNoiseGenerator.js\"));\n return new PerlinNoiseGenerator(container);\n });\n });\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/perlinNoise/dist/browser/index.js?\n}");
|
|
27
|
+
|
|
28
|
+
/***/ },
|
|
29
|
+
|
|
30
|
+
/***/ "../../plugins/move/dist/browser/index.js"
|
|
31
|
+
/*!************************************************!*\
|
|
32
|
+
!*** ../../plugins/move/dist/browser/index.js ***!
|
|
33
|
+
\************************************************/
|
|
34
|
+
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
35
|
+
|
|
36
|
+
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ensureBaseMoverLoaded: () => (/* binding */ ensureBaseMoverLoaded),\n/* harmony export */ loadMovePlugin: () => (/* binding */ loadMovePlugin)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n\nasync function loadMovePlugin(engine) {\n engine.checkVersion(\"4.0.0-beta.3\");\n await engine.pluginManager.register(async (e)=>{\n const moveEngine = e, movePluginManager = moveEngine.pluginManager;\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.pathGenerators ??= new Map();\n movePluginManager.addPathGenerator = (name, generator)=>{\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.initializers.pathGenerators.set(name, generator);\n };\n movePluginManager.getPathGenerators = async (container, force = false)=>{\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.pathGenerators ??= new Map();\n return (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getItemMapFromInitializer)(container, movePluginManager.pathGenerators, movePluginManager.initializers.pathGenerators, force);\n };\n const { MovePlugin } = await __webpack_require__.e(/*! import() */ \"plugins_move_dist_browser_MovePlugin_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./MovePlugin.js */ \"../../plugins/move/dist/browser/MovePlugin.js\"));\n e.pluginManager.addPlugin(new MovePlugin(e.pluginManager));\n });\n}\nfunction ensureBaseMoverLoaded(e) {\n if (!e.pluginManager.addPathGenerator) {\n throw new Error(\"tsParticles Base Mover is not loaded\");\n }\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../plugins/move/dist/browser/index.js?\n}");
|
|
27
37
|
|
|
28
38
|
/***/ }
|
|
29
39
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Demo / Generator : https://particles.js.org/
|
|
5
5
|
* GitHub : https://www.github.com/matteobruni/tsparticles
|
|
6
6
|
* How to use? : Check the GitHub README
|
|
7
|
-
* v4.0.0-beta.
|
|
7
|
+
* v4.0.0-beta.3
|
|
8
8
|
*/
|
|
9
9
|
"use strict";
|
|
10
10
|
/*
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
\****************************************************************/
|
|
24
24
|
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
25
25
|
|
|
26
|
-
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ PolygonPathGenerator: () => (/* binding */ PolygonPathGenerator)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n\nconst defaultOptions = {\n sides: 6,\n turnSteps: 20,\n angle: 30\n};\nclass PolygonPathGenerator {\n dirsList;\n options;\n _container;\n _res;\n constructor(container){\n this._container = container;\n this._res = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.origin;\n this.dirsList = [];\n this.options = (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.deepExtend)({}, defaultOptions);\n }\n generate(p) {\n const { sides, turnSteps } = this.options;\n p.hexStep ??= 0;\n p.hexDirection ??= sides === 6 ? ((0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() * 3 | 0) * 2 : (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() * sides | 0;\n p.hexSpeed ??= p.velocity.length;\n if (p.hexStep % turnSteps === 0) {\n p.hexDirection = (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() > 0.5 ? (p.hexDirection + 1) % sides : (p.hexDirection + sides - 1) % sides;\n }\n p.velocity.x = 0;\n p.velocity.y = 0;\n p.hexStep++;\n const direction = this.dirsList[p.hexDirection];\n this._res.x = direction.x * p.hexSpeed;\n this._res.y = direction.y * p.hexSpeed;\n return this._res;\n }\n init() {\n const container = this._container, sourceOptions = container.actualOptions.particles.move.path.options;\n this.options.sides = sourceOptions[\"sides\"] > 0 ? sourceOptions[\"sides\"] : this.options.sides;\n this.options.angle = sourceOptions[\"angle\"] ?? this.options.angle;\n this.options.turnSteps = sourceOptions[\"turnSteps\"] >= 0 ? sourceOptions[\"turnSteps\"] : this.options.turnSteps;\n this._createDirs();\n }\n reset(particle) {\n delete particle.hexStep;\n delete particle.hexDirection;\n delete particle.hexSpeed;\n }\n update() {}\n _createDirs = ()=>{\n const { options } = this;\n this.dirsList = [];\n for(let i = 0; i < 360; i += 360 / options.sides){\n const angle = options.angle + i;\n this.dirsList.push(_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.create(Math.cos(angle * Math.PI / 180), Math.sin(angle * Math.PI / 180)));\n }\n };\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/polygon/dist/browser/PolygonPathGenerator.js?\n}");
|
|
26
|
+
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ PolygonPathGenerator: () => (/* binding */ PolygonPathGenerator)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_plugin_move__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\");\n\n\nconst defaultOptions = {\n sides: 6,\n turnSteps: 20,\n angle: 30\n};\nclass PolygonPathGenerator {\n dirsList;\n options;\n _container;\n _res;\n constructor(container){\n this._container = container;\n this._res = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.origin;\n this.dirsList = [];\n this.options = (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.deepExtend)({}, defaultOptions);\n }\n generate(p) {\n const { sides, turnSteps } = this.options;\n p.hexStep ??= 0;\n p.hexDirection ??= sides === 6 ? ((0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() * 3 | 0) * 2 : (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() * sides | 0;\n p.hexSpeed ??= p.velocity.length;\n if (p.hexStep % turnSteps === 0) {\n p.hexDirection = (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() > 0.5 ? (p.hexDirection + 1) % sides : (p.hexDirection + sides - 1) % sides;\n }\n p.velocity.x = 0;\n p.velocity.y = 0;\n p.hexStep++;\n const direction = this.dirsList[p.hexDirection];\n this._res.x = direction.x * p.hexSpeed;\n this._res.y = direction.y * p.hexSpeed;\n return this._res;\n }\n init() {\n const container = this._container, sourceOptions = container.actualOptions.particles.move.path.options;\n this.options.sides = sourceOptions[\"sides\"] > 0 ? sourceOptions[\"sides\"] : this.options.sides;\n this.options.angle = sourceOptions[\"angle\"] ?? this.options.angle;\n this.options.turnSteps = sourceOptions[\"turnSteps\"] >= 0 ? sourceOptions[\"turnSteps\"] : this.options.turnSteps;\n this._createDirs();\n }\n reset(particle) {\n delete particle.hexStep;\n delete particle.hexDirection;\n delete particle.hexSpeed;\n }\n update() {}\n _createDirs = ()=>{\n const { options } = this;\n this.dirsList = [];\n for(let i = 0; i < 360; i += 360 / options.sides){\n const angle = options.angle + i;\n this.dirsList.push(_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.create(Math.cos(angle * Math.PI / 180), Math.sin(angle * Math.PI / 180)));\n }\n };\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/polygon/dist/browser/PolygonPathGenerator.js?\n}");
|
|
27
27
|
|
|
28
28
|
/***/ }
|
|
29
29
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Demo / Generator : https://particles.js.org/
|
|
5
5
|
* GitHub : https://www.github.com/matteobruni/tsparticles
|
|
6
6
|
* How to use? : Check the GitHub README
|
|
7
|
-
* v4.0.0-beta.
|
|
7
|
+
* v4.0.0-beta.3
|
|
8
8
|
*/
|
|
9
9
|
"use strict";
|
|
10
10
|
/*
|
|
@@ -23,7 +23,17 @@
|
|
|
23
23
|
\*************************************************/
|
|
24
24
|
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
25
25
|
|
|
26
|
-
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadPolygonPath: () => (/* binding */ loadPolygonPath),\n/* harmony export */ polygonPathName: () => (/* binding */ polygonPathName)\n/* harmony export */ });\nconst polygonPathName = \"polygonPathGenerator\";\nasync function loadPolygonPath(engine) {\n engine.checkVersion(\"4.0.0-beta.
|
|
26
|
+
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadPolygonPath: () => (/* binding */ loadPolygonPath),\n/* harmony export */ polygonPathName: () => (/* binding */ polygonPathName)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_plugin_move__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\");\n\n\nconst polygonPathName = \"polygonPathGenerator\";\nasync function loadPolygonPath(engine) {\n engine.checkVersion(\"4.0.0-beta.3\");\n await engine.pluginManager.register(async (e)=>{\n const { ensureBaseMoverLoaded } = await Promise.resolve(/*! import() */).then(__webpack_require__.bind(__webpack_require__, /*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\"));\n ensureBaseMoverLoaded(e);\n e.pluginManager.addPathGenerator?.(polygonPathName, async (container)=>{\n const { PolygonPathGenerator } = await __webpack_require__.e(/*! import() */ \"paths_polygon_dist_browser_PolygonPathGenerator_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./PolygonPathGenerator.js */ \"../../paths/polygon/dist/browser/PolygonPathGenerator.js\"));\n return new PolygonPathGenerator(container);\n });\n });\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/polygon/dist/browser/index.js?\n}");
|
|
27
|
+
|
|
28
|
+
/***/ },
|
|
29
|
+
|
|
30
|
+
/***/ "../../plugins/move/dist/browser/index.js"
|
|
31
|
+
/*!************************************************!*\
|
|
32
|
+
!*** ../../plugins/move/dist/browser/index.js ***!
|
|
33
|
+
\************************************************/
|
|
34
|
+
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
35
|
+
|
|
36
|
+
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ensureBaseMoverLoaded: () => (/* binding */ ensureBaseMoverLoaded),\n/* harmony export */ loadMovePlugin: () => (/* binding */ loadMovePlugin)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n\nasync function loadMovePlugin(engine) {\n engine.checkVersion(\"4.0.0-beta.3\");\n await engine.pluginManager.register(async (e)=>{\n const moveEngine = e, movePluginManager = moveEngine.pluginManager;\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.pathGenerators ??= new Map();\n movePluginManager.addPathGenerator = (name, generator)=>{\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.initializers.pathGenerators.set(name, generator);\n };\n movePluginManager.getPathGenerators = async (container, force = false)=>{\n movePluginManager.initializers.pathGenerators ??= new Map();\n movePluginManager.pathGenerators ??= new Map();\n return (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getItemMapFromInitializer)(container, movePluginManager.pathGenerators, movePluginManager.initializers.pathGenerators, force);\n };\n const { MovePlugin } = await __webpack_require__.e(/*! import() */ \"plugins_move_dist_browser_MovePlugin_js\").then(__webpack_require__.bind(__webpack_require__, /*! ./MovePlugin.js */ \"../../plugins/move/dist/browser/MovePlugin.js\"));\n e.pluginManager.addPlugin(new MovePlugin(e.pluginManager));\n });\n}\nfunction ensureBaseMoverLoaded(e) {\n if (!e.pluginManager.addPathGenerator) {\n throw new Error(\"tsParticles Base Mover is not loaded\");\n }\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../plugins/move/dist/browser/index.js?\n}");
|
|
27
37
|
|
|
28
38
|
/***/ }
|
|
29
39
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Demo / Generator : https://particles.js.org/
|
|
5
5
|
* GitHub : https://www.github.com/matteobruni/tsparticles
|
|
6
6
|
* How to use? : Check the GitHub README
|
|
7
|
-
* v4.0.0-beta.
|
|
7
|
+
* v4.0.0-beta.3
|
|
8
8
|
*/
|
|
9
9
|
"use strict";
|
|
10
10
|
/*
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
\**************************************************************/
|
|
24
24
|
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
25
25
|
|
|
26
|
-
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ RandomPathGenerator: () => (/* binding */ RandomPathGenerator)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n\nconst minRandom = -1, maxRandom = 1;\nclass RandomPathGenerator {\n _res;\n constructor(){\n this._res = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.origin;\n }\n generate() {\n this._res.x = (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandomInRange)(minRandom, maxRandom);\n this._res.y = (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandomInRange)(minRandom, maxRandom);\n return this._res;\n }\n init() {}\n reset() {}\n update() {}\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/random/dist/browser/RandomPathGenerator.js?\n}");
|
|
26
|
+
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ RandomPathGenerator: () => (/* binding */ RandomPathGenerator)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"../../engine/dist/browser/index.js\");\n/* harmony import */ var _tsparticles_plugin_move__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @tsparticles/plugin-move */ \"../../plugins/move/dist/browser/index.js\");\n\n\nconst minRandom = -1, maxRandom = 1;\nclass RandomPathGenerator {\n _res;\n constructor(){\n this._res = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.Vector.origin;\n }\n generate() {\n this._res.x = (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandomInRange)(minRandom, maxRandom);\n this._res.y = (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandomInRange)(minRandom, maxRandom);\n return this._res;\n }\n init() {}\n reset() {}\n update() {}\n}\n\n\n//# sourceURL=webpack://@tsparticles/all/../../paths/random/dist/browser/RandomPathGenerator.js?\n}");
|
|
27
27
|
|
|
28
28
|
/***/ }
|
|
29
29
|
|