[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fcZ1svak8_Ym4DWjjQdciSxTi4WUkB0YOREWo7P4vd1I":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":13,"num_ratings":14,"last_updated":15,"tested_up_to":16,"requires_at_least":17,"requires_php":18,"tags":19,"homepage":24,"download_link":25,"security_score":26,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29,"vulnerabilities":30,"developer":31,"crawl_stats":28,"alternatives":39,"analysis":143,"fingerprints":180},"calder-svg","Calder SVG","2.1","termel","https:\u002F\u002Fprofiles.wordpress.org\u002Fmunger41\u002F","\u003Cp>Animate prepared SVG drawing as a mobile picture. Uses \u003Ca href=\"http:\u002F\u002Fanime-js.com\u002F\" title=\"Anime.js\" rel=\"nofollow ugc\">Anime.js\u003C\u002Fa> and \u003Ca href=\"https:\u002F\u002Fmaxwellito.github.io\u002Fvivus\u002F\" title=\"Vivus.js\" rel=\"nofollow ugc\">Vivus.js\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>Examples:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"http:\u002F\u002Fcaldersvg.termel.fr\u002F\" title=\"Musicians\" rel=\"nofollow ugc\">Musicians\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"http:\u002F\u002Fcaldersvg.termel.fr\u002Fpoliticians\u002F\" title=\"Politicians\" rel=\"nofollow ugc\">Politicians\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Shortcode\u003C\u002Fh3>\n\u003Cp>Add desired prepared (see example) images in wordpress standard \u003Ccode>uploads\u003C\u002Fcode> folder (on multisite \u003Ccode>uploads\u002Fsites\u002F#\u002F\u003C\u002Fcode>), and add shortcode to any page, specifing svg folder to use and animate:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[caldersvg svgs=\"wp-content\u002Fmy\u002Ffolder\u002Fcontaining\u002Fsvg\u002Ffiles\u002F\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>or\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[caldersvg svgs=\"\u002Fvar\u002Fwww\u002Fmysite\u002Fwp-content\u002Fmy\u002Ffolder\u002Fcontaining\u002Fsvg\u002Ffiles\u002F\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>with all your .svg files in last folder.\u003C\u002Fp>\n\u003Cp>The \u003Ccode>svgs\u003C\u002Fcode> parameter DOES NOT contain a \u003Cstrong>URL\u003C\u002Fstrong> (starting by http:\u002F\u002F), but a \u003Cstrong>relative path\u003C\u002Fstrong> on the server.\u003C\u002Fp>\n\u003Cp>You can test with default demo files, included inside plugin (under calder-svg\u002Fsvg\u002F), but you have to copy them under your uploads wordpress folder before, and use something like shortcode:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[caldersvg svgs=\"..\u002F..\u002Fsvg\u002Fmusicians\u002F\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch3>SVG file example\u003C\u002Fh3>\n\u003Cp>If using Inkscape to create the SVG files, please save your files as Optimized SVG, then check that your file is containing a stroke and no fill for each path (else you could experience strange displays).\u003Cbr \u002F>\nLike:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>fill=\"none\" stroke-width=\"1\" stroke=\"#cecece\"\n\n\n\u003Csvg id=\"svg7876\" xmlns:rdf=\"http:\u002F\u002Fwww.w3.org\u002F1999\u002F02\u002F22-rdf-syntax-ns#\" xmlns=\"http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg\" viewBox=\"0 0 571.25 650\" version=\"1.1\" xmlns:cc=\"http:\u002F\u002Fcreativecommons.org\u002Fns#\" xmlns:dc=\"http:\u002F\u002Fpurl.org\u002Fdc\u002Felements\u002F1.1\u002F\">\n    \u003Cg id=\"g8426\">\n        \u003Cpath id=\"path8440\" fill=\"none\" stroke-width=\"1\" stroke=\"#cecece\" d=\"m0 596.79c0-44.452 0.29402-53.508 1.7857-55 0.9822-0.99\n\u003C\u002Fcode>\u003C\u002Fpre>\n","Animate prepared SVG drawing as a mobile picture.",10,1697,100,1,"2017-03-21T16:49:00.000Z","4.8.28","4.0","",[20,21,22,23],"animation","art","calder","svg","http:\u002F\u002Fwww.maxizone.fr\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcalder-svg.zip",85,0,null,"2026-03-15T15:16:48.613Z",[],{"slug":32,"display_name":7,"profile_url":8,"plugin_count":33,"total_installs":34,"avg_security_score":35,"avg_patch_time_days":36,"trust_score":37,"computed_at":38},"munger41",14,800,84,30,83,"2026-04-04T10:38:17.671Z",[40,64,87,107,126],{"slug":41,"name":42,"version":43,"author":44,"author_profile":45,"description":46,"short_description":47,"active_installs":48,"downloaded":49,"rating":50,"num_ratings":51,"last_updated":52,"tested_up_to":53,"requires_at_least":54,"requires_php":55,"tags":56,"homepage":62,"download_link":63,"security_score":13,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"marvy-animation-addons-for-elementor-lite","Marvy – Background Animations for Elementor","1.7.5","Iqonic Design","https:\u002F\u002Fprofiles.wordpress.org\u002Fiqonicdesign\u002F","\u003Cp>Marvy is the best solution for users who need beautiful animations for creative and professional projects. This Elementor plugin for animation contains lots of handy items in many different styles. You can quickly add animation to your design and get the best results in minimum efforts.\u003C\u002Fp>\n\u003Cp>Marvy is carefully created to fit your needs. We bet this Animation plugin will be extremely handy tool for your upcoming projects. Additionally, Marvy is well organized and very easy to customize.\u003C\u002Fp>\n\u003Ch3>How people use Marvy Animations\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fxamin-wordpress.iqonic.design\u002Fdashboard-2\u002F\" rel=\"nofollow ugc\">Xamin\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fumetric-wordpress.iqonic.design\u002Fmobile-apps-reporting\u002F\" rel=\"nofollow ugc\">Umetric\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>\u003Ca href=\"https:\u002F\u002Fmarvy.iqonic.design\u002F\" rel=\"nofollow ugc\">Check out live demo\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fapps.iqonic.design\u002Fdocs\u002Fproduct\u002Fmarvy-documentation\u002Fgetting-started\u002F\" rel=\"nofollow ugc\">Documentation\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fcodecanyon.net\u002Fitem\u002Fmarvy-background-animations-for-elementor\u002F28285063\" rel=\"nofollow ugc\">PRO\u003C\u002Fa>\u003C\u002Fh3>\n\u003Cp>\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FHufBgKESf5Q?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>When you activate the plugin, you get 7 Unique and Stunning background animation:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Ripple Animation\u003C\u002Fli>\n\u003Cli>Rotate Animation\u003C\u002Fli>\n\u003Cli>Drop Animation\u003C\u002Fli>\n\u003Cli>Flying Objects Animation\u003C\u002Fli>\n\u003Cli>Wave Animation\u003C\u002Fli>\n\u003Cli>Rings Animation\u003C\u002Fli>\n\u003Cli>Topology Animation\u003C\u002Fli>\n\u003Cli>Gradient Animation\u003C\u002Fli>\n\u003Cli>Snow Animation\u003C\u002Fli>\n\u003Cli>Cloud Animation\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>We’ve added ready to use addon for Elementor Pagebuilder. With our trendy backgroud animations bring your site to life.\u003C\u002Fp>\n\u003Cp>Every animation is fully responsive and will make your creation look good on any device.\u003C\u002Fp>\n","Marvy is the ultimate animation add-on for Elementor. Bring your pages to life with next-generation animation effects and seamless Elementor integrati &hellip;",5000,102048,80,7,"2025-12-02T17:22:00.000Z","6.8.5","3.0.1","7.4",[57,58,59,60,61],"background-animation","elementor","elementor-addons","elementor-animation","particles","https:\u002F\u002Fiqonic.design","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fmarvy-animation-addons-for-elementor-lite.1.7.5.zip",{"slug":65,"name":66,"version":67,"author":68,"author_profile":69,"description":70,"short_description":71,"active_installs":72,"downloaded":73,"rating":13,"num_ratings":74,"last_updated":75,"tested_up_to":76,"requires_at_least":77,"requires_php":78,"tags":79,"homepage":85,"download_link":86,"security_score":26,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"gdpr-press","GDPRess | Eliminate external requests to increase GDPR compliance","1.2.3","Daan van den Bergh","https:\u002F\u002Fprofiles.wordpress.org\u002Fdaanvandenbergh\u002F","\u003Cp>In January, 2022 \u003Ca href=\"https:\u002F\u002Fffw.press\u002Fblog\u002Fgdpr\u002Fgoogle-fonts-violates-gdpr-germany\u002F\" rel=\"nofollow ugc\">a German court ruled\u003C\u002Fa> that a website owner was in breach of GDPR and should pay a € 100,- fine, because embedded Google Fonts were used, essentially transferring the user’s personal data (IP address) without the user’s prior consent.\u003C\u002Fp>\n\u003Ch4>What’s embedding?\u003C\u002Fh4>\n\u003Cp>When an external (i.e. loaded from another server, besides your own) resource is embedded into a webpage, it basically means that the resource behaves as if it’s loaded from the same server hosting the webpage.\u003C\u002Fp>\n\u003Ch4>Why is using embedded resources in breach of GDPR?\u003C\u002Fh4>\n\u003Cp>Because of \u003Ca href=\"https:\u002F\u002Fffw.press\u002Fblog\u002Fhow-to\u002Fgoogle-fonts-gdpr\u002F\" rel=\"nofollow ugc\">the way the internet works\u003C\u002Fa>. When a browser (i.e. computer) requests a file (e.g. an image or a font file), the server needs the IP address of that computer to send it back. All these requests (including the IP address) are logged in a so-called \u003Ccode>access.log\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Cp>Once this IP address leaves the European Union, your website is violating the GDPR.\u003C\u002Fp>\n\u003Ch4>What does this plugin do?\u003C\u002Fh4>\n\u003Cp>GDPRess scans your homepage for 3rd party scripts (JS) and stylesheets (CSS), and:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Allows you to download or exclude them from downloading,\u003C\u002Fli>\n\u003Cli>Parses the stylesheets for loaded font files, downloads them, and rewrites the stylesheet to use the local copies,\u003C\u002Fli>\n\u003Cli>Makes sure the local copies of each script\u002Fstylesheet are used in your site’s frontend.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>In short, it makes sure no requests are made to external\u002Fembedded\u002F3rd party scripts and stylesheets.\u003C\u002Fp>\n","In January, 2022 a German court ruled that a website owner was in breach of GDPR and should pay a € 100,- fine, because embedded Google Fonts were use &hellip;",1000,10934,8,"2022-09-05T12:42:00.000Z","5.9.13","5.8","7.2",[80,81,82,83,84],"3rd-party","avg","dsvgo","external","gdpr","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fgdpr-press\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fgdpr-press.1.2.3.zip",{"slug":88,"name":89,"version":90,"author":91,"author_profile":92,"description":93,"short_description":94,"active_installs":13,"downloaded":95,"rating":27,"num_ratings":27,"last_updated":96,"tested_up_to":97,"requires_at_least":98,"requires_php":99,"tags":100,"homepage":105,"download_link":106,"security_score":26,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"tsparticles-block","tsParticles WP Block","3.0.0","Matteo Bruni","https:\u002F\u002Fprofiles.wordpress.org\u002Fmatteobruni\u002F","\u003Cp>Official tsParticles WordPress Plugin\u003C\u002Fp>\n\u003Cp>Easily create highly customizable particle, confetti and fireworks animations and use them as animated backgrounds for your website.\u003Cbr \u002F>\nReady to use components available also for Web Components, Vue.js (2.x and 3.x), Angular, Svelte, jQuery, Preact, React, Riot.js, Solid.js, Inferno.\u003C\u002Fp>\n\u003Cp>Official tsParticles website with options editor: \u003Ca href=\"https:\u002F\u002Fparticles.js.org\" rel=\"nofollow ugc\">https:\u002F\u002Fparticles.js.org\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>Official Social Channels:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fmatteobruni\u002Ftsparticles\" rel=\"nofollow ugc\">GitHub\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fdiscord.gg\u002FhACwv45Hme\" rel=\"nofollow ugc\">Discord\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fjoin.slack.com\u002Ft\u002Ftsparticles\u002Fshared_invite\u002FenQtOTcxNTQxNjQ4NzkxLWE2MTZhZWExMWRmOWI5MTMxNjczOGE1Yjk0MjViYjdkYTUzODM3OTc5MGQ5MjFlODc4MzE0N2Q1OWQxZDc1YzI\" rel=\"nofollow ugc\">Slack\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Ft.me\u002Ftsparticles\" rel=\"nofollow ugc\">Telegram\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwww.reddit.com\u002Fr\u002FtsParticles\u002F\" rel=\"nofollow ugc\">Reddit\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwww.twitter.com\u002Fr\u002FtsParticles\u002F\" rel=\"nofollow ugc\">Twitter\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>BREAKING CHANGES\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Removed all tsParticles \u003Ccode>load\u003C\u002Fcode> methods to keep only a single one using a single \u003Ccode>object\u003C\u002Fcode> parameter\u003C\u002Fli>\n\u003Cli>Removed support for shape deprecated properties like \u003Ccode>shape.image\u003C\u002Fcode>, \u003Ccode>shape.polygon\u003C\u002Fcode>, \u003Ccode>shape.stroke\u003C\u002Fcode>\n\u003Cul>\n\u003Cli>the stroke property can be found in the \u003Ccode>particles section\u003C\u002Fcode>, not in the \u003Ccode>shape\u003C\u002Fcode> object\u003C\u002Fli>\n\u003Cli>the image and polygon properties, like any other shape, are part of the \u003Ccode>shape.options\u003C\u002Fcode> object\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>Stroke now is a single object only like all the other particles properties\u003C\u002Fli>\n\u003Cli>Removed multiline text shape, the text shape now supports that\u003C\u002Fli>\n\u003Cli>Simplified some functions, using objects or removing unused overloads, this is breaking for v2 shapes\u003C\u002Fli>\n\u003Cli>Moved some properties to private since they were public by mistake (this shouldn’t affect many, the properties were mainly used in the engine)\u003C\u002Fli>\n\u003Cli>Removed obsolete random properties in options objects\u003C\u002Fli>\n\u003Cli>Removed emitters shapes from the plugin files, every emitters shape now has a dedicated package\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Major Changes\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>All the components for Front End frameworks were removed from this repository, each one now has its own repository. This is mainly for maintainability. It’s easier to support multiple Front End frameworks versions in a dedicated repository instead of a multipurpose monorepository. Vue.js 2.x and 3.x were kept split because they have many differences.\n\u003Cul>\n\u003Cli>Angular (\u003Ccode>@tsparticles\u002Fangular\u003C\u002Fcode>): https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Fangular (v3 under development)\u003C\u002Fli>\n\u003Cli>Astro (\u003Ccode>@tsparticles\u002Fastro\u003C\u002Fcode>): https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Fastro (v3 under development)\u003C\u002Fli>\n\u003Cli>Ember (\u003Ccode>@tsparticles\u002Fember\u003C\u002Fcode>): https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Fember (v3 under development)\u003C\u002Fli>\n\u003Cli>Inferno (\u003Ccode>@tsparticles\u002Finferno\u003C\u002Fcode>): https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Finferno (v3 under development)\u003C\u002Fli>\n\u003Cli>jQuery (\u003Ccode>@tsparticles\u002Fjquery\u003C\u002Fcode>): https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Fjquery (v3 under development)\u003C\u002Fli>\n\u003Cli>Lit (\u003Ccode>@tsparticles\u002Flit\u003C\u002Fcode>): https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Flit (v3 under development)\u003C\u002Fli>\n\u003Cli>Preact (\u003Ccode>@tsparticles\u002Fpreact\u003C\u002Fcode>): https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Fpreact (v3 under development)\u003C\u002Fli>\n\u003Cli>React (\u003Ccode>@tsparticles\u002Freact\u003C\u002Fcode>): https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Freact (v3 under development)\u003C\u002Fli>\n\u003Cli>Riot (\u003Ccode>@tsparticles\u002Friot\u003C\u002Fcode>): https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Friot (v3 under development)\u003C\u002Fli>\n\u003Cli>Solid (\u003Ccode>@tsparticles\u002Fsolid\u003C\u002Fcode>): https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Fsolid (v3 under development)\u003C\u002Fli>\n\u003Cli>Svelte (\u003Ccode>@tsparticles\u002Fsvelte\u003C\u002Fcode>): https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Fsvelte (v3 under development)\u003C\u002Fli>\n\u003Cli>Vue.js (\u003Ccode>@tsparticles\u002Fvue\u003C\u002Fcode>): https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Fvue (v3 under development)\u003C\u002Fli>\n\u003Cli>Web Components (\u003Ccode>@tsparticles\u002Fwebcomponents\u003C\u002Fcode>): https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Fwebcomponents (v3 under development)\u003C\u002Fli>\n\u003Cli>WordPress (\u003Ccode>@tsparticles\u002Fwordpress\u003C\u002Fcode>): https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Fwordpress (v3 under development)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>Removed all presets from this repository for a single one (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Fpresets\" rel=\"nofollow ugc\">https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Fpresets\u003C\u002Fa>) in the @tsparticles organization, this will make easier to contribute to specific presets or create new ones. (Renaming them to \u003Ccode>@tsparticles\u002Fpreset-\u003Cname>\u003C\u002Fcode> #3977)\u003C\u002Fli>\n\u003Cli>All the previous packages will be deprecated when v3 will come out. Using only the new naming system is the main focus of v3. All the official packages will have \u003Ccode>@tsparticles\u002F\u003C\u002Fcode> organization in the package name, replacing \u003Ccode>tsparticles-\u003C\u002Fcode> prefix, except for \u003Ccode>tsparticles\u003C\u002Fcode> package which will remain the same.\u003C\u002Fli>\n\u003Cli>Moved editor to its own repository: https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Feditor\u003C\u002Fli>\n\u003Cli>Pjs package now supports all the legacy pjs options only. This will make this package a wrapper for old pjs users. You can’t use tsParticles options in pjs calls.\u003C\u002Fli>\n\u003Cli>Pjs package is no longer part of \u003Ccode>@tsparticles\u002Fslim\u003C\u002Fcode> bundle, only included in \u003Ccode>@tsparticles\u002Fall\u003C\u002Fcode>.\u003C\u002Fli>\n\u003Cli>Text shape is no longer part of \u003Ccode>@tsparticles\u002Fslim\u003C\u002Fcode> bundle, included in \u003Ccode>tsparticles\u003C\u002Fcode>.\u003C\u002Fli>\n\u003Cli>Emoji shape is now part of \u003Ccode>@tsparticles\u002Fslim\u003C\u002Fcode> bundle.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Bug Fixes\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Fixed bug when using particles groups\u003C\u002Fli>\n\u003Cli>Fixed pool on particles destroyed by updaters\u003C\u002Fli>\n\u003Cli>Fixed out modes, bounce was not checking the direction of the update request\u003C\u002Fli>\n\u003Cli>Fixed issue with change theme when an existing canvas is used\u003C\u002Fli>\n\u003Cli>Fixed updates on particles destroyed by updaters, that section wasn’t using the memory pool for reusing old particles instead of creating new ones.\u003C\u002Fli>\n\u003Cli>Fixed memory leak in destroyed particles by updaters, the z array wasn’t filtered, thanks to @longnguyen2004, closes #5101\u003C\u002Fli>\n\u003Cli>Fixed light interaction, particle shadow wasn’t calculated correctly\u003C\u002Fli>\n\u003Cli>Improved resize event and density formula\u003C\u002Fli>\n\u003Cli>Fixed trails config\u003C\u002Fli>\n\u003Cli>Fixed flat output in \u003Ca href=\"https:\u002F\u002Fnpmjs.com\u002Fpackage\u002F@tsparticles\u002Fconfetti\" rel=\"nofollow ugc\">@tsparticles\u002Fconfetti\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Improved sounds plugin\u003C\u002Fli>\n\u003Cli>Fixed position in emitters after respawn\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>New Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Added new EventType particleDestroyed\u003C\u002Fli>\n\u003Cli>Replaced text shape with emoji shape in \u003Ca href=\"https:\u002F\u002Fnpmjs.com\u002Fpackage\u002F@tsparticles\u002Fconfetti\" rel=\"nofollow ugc\">@tsparticles\u002Fconfetti\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Reworked \u003Ca href=\"https:\u002F\u002Fnpmjs.com\u002Fpackage\u002F@tsparticles\u002Ffireworks\" rel=\"nofollow ugc\">@tsparticles\u002Ffireworks\u003C\u002Fa> a bit for better output with the new v3 trails\u003C\u002Fli>\n\u003Cli>Added range values to life duration and delay of emitters\u003C\u002Fli>\n\u003Cli>Added two new bundles\n\u003Cul>\n\u003Cli>\u003Ccode>@tsparticles\u002Fbasic\u003C\u002Fcode>: minimum plugins for having circular dots moving in the canvas, common package for all bundles, and presets after this is released. Packages included:\n\u003Cul>\n\u003Cli>\u003Ccode>@tsparticles\u002Fengine\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>@tsparticles\u002Fmove-base\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>@tsparticles\u002Fshape-circle\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>@tsparticles\u002Fupdater-color\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>@tsparticles\u002Fupdater-opacity\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>@tsparticles\u002Fupdater-out-modes\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>@tsparticles\u002Fupdater-size\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\u003Ccode>@tsparticles\u002Fall\u003C\u002Fcode>: a package that includes all the plugins, it’s not a best practice to use this, but the easiest way for trying every feature available for sure. It will be used mainly in the \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Fwebsite\" rel=\"nofollow ugc\">website\u003C\u002Fa>.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>Added event on config added to the engine\u003C\u002Fli>\n\u003Cli>Added flat options to @tsparticles\u002Fconfetti options\u003C\u002Fli>\n\u003Cli>Creating support for effects, like bubble that wasn’t a real shape\u003C\u002Fli>\n\u003Cli>Added linear easing\u003C\u002Fli>\n\u003Cli>Created new emitters shapes: Canvas, Path and Polygon\u003C\u002Fli>\n\u003Cli>Created trail effect plugin, this one is a real trail drawn in the canvas, it works also in transparent backgrounds. It requires more resources since it’s drawn calculating last N positions and not redrawing a semi-transparent canvas on itself, supports also fade.\u003C\u002Fli>\n\u003Cli>Added pop click interaction\u003C\u002Fli>\n\u003Cli>Added limit mode (breaking changes on limit options)\u003C\u002Fli>\n\u003Cli>Added possibility to replace color and opacity for emitters shapes\u003C\u002Fli>\n\u003Cli>Added more options for customizing noises values (only Simplex and Perlin paths)\u003C\u002Fli>\n\u003Cli>Added curl noise path plugin\u003C\u002Fli>\n\u003Cli>Created Simplex and Perlin noise packages from their path plugins, they can be used in multiple packages without duplication (Curl Noise path for example)\u003C\u002Fli>\n\u003Cli>Added new emoji shape, better performance than text shape\u003C\u002Fli>\n\u003Cli>Added clear flag to the root object, enabled by default, if disabled, the canvas won’t be cleared\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>= 2.11.0\u003C\u002Fp>\n\u003Ch3>Bug Fixes\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Removed console log, closes #5003\u003C\u002Fli>\n\u003Cli>Fixed getPositionOrSize function\u003C\u002Fli>\n\u003Cli>Fixed some shapes\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>New Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Added refresh flag for loading plugins, this will prevent multiple refresh of the instance\u003C\u002Fli>\n\u003Cli>Added animated gif support to image drawer (use it with caution, gifs are heavy)\u003C\u002Fli>\n\u003Cli>Added setLogger and getLogger functions, this will prevent \u003Ccode>console.log\u003C\u002Fcode> mistakenly left in the code.\u003C\u002Fli>\n\u003Cli>Added export plugins, previous export functions were removed (barely used), and a 3 new plugins are available. The available exports plugin are: Image, JSON, Video. The first two were already present, the third one is new.\u003C\u002Fli>\n\u003Cli>Added new rounded polygon shape\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Other Changes\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Removed fallbacks for requestAnimationFrame, they’re useless.\u003C\u002Fli>\n\u003Cli>Added tree shaking capabilities\u003C\u002Fli>\n\u003Cli>Added ESLint \u003Ccode>no-console\u003C\u002Fcode> rule, to avoid other issues likes #5003, \u003Ccode>getLogger\u003C\u002Fcode> must be used when needed some logs.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>How do \u003Ccode>setLogger\u003C\u002Fcode> and \u003Ccode>getLogger\u003C\u002Fcode> functions work?\u003C\u002Fh3>\n\u003Cp>If you want to customize the log of \u003Ccode>tsParticles\u003C\u002Fcode> you can call \u003Ccode>setLogger(logger)\u003C\u002Fcode> function, passing a \u003Ccode>ILogger\u003C\u002Fcode> object.\u003C\u002Fp>\n\u003Cp>The \u003Ccode>setLogger\u003C\u002Fcode> function prevents \u003Ccode>undefined\u003C\u002Fcode> properties assigning the default one.\u003C\u002Fp>\n\u003Cpre>\u003Ccode>`ts\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>setLogger({\u003Cbr \u002F>\n    debug: console.debug,\u003Cbr \u002F>\n    error: console.error,\u003Cbr \u002F>\n    info: console.info,\u003Cbr \u002F>\n    log: console.log,\u003Cbr \u002F>\n    verbose: console.log,\u003Cbr \u002F>\n    warning: console.warn,\u003Cbr \u002F>\n});\u003Cbr \u002F>\n    `\u003C\u002Fp>\n\u003Cp>This assigns all the log functions console functions, but you can use empty functions (\u003Ccode>() => {}\u003C\u002Fcode>) to disable every function.\u003C\u002Fp>\n\u003Cp>If there’s a \u003Ccode>console.log\u003C\u002Fcode> left like in #3552, #3528 or #5003, you can disable the \u003Ccode>log\u003C\u002Fcode> property of the \u003Ccode>setLogger\u003C\u002Fcode> parameter to get rid of it, so you don’t have to wait the next release.\u003C\u002Fp>\n\u003Cp>The \u003Ccode>getLogger\u003C\u002Fcode> function, returns the object set using \u003Ccode>setLogger\u003C\u002Fcode>, every plugin \u003Cem>MUST\u003C\u002Fem> use \u003Ccode>getLogger()\u003C\u002Fcode> for logging things, so mistakes can be fixed easily, even errors can be muted or redirected to your favorite logging platform.\u003C\u002Fp>\n\u003Cp>If you want to log something use this code:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>`ts\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>getLogger().log(“tsParticles is awesome”);\u003Cbr \u002F>\n    `\u003C\u002Fp>\n\u003Cp>= 2.10.0\u003C\u002Fp>\n\u003Ch3>New Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Added max speed value to collisions options\u003C\u002Fli>\n\u003Cli>Added range values to spiral shape options, added \u003Ccode>widthFactor\u003C\u002Fcode> value\u003C\u002Fli>\n\u003Cli>Added new arrow shape\u003C\u002Fli>\n\u003Cli>Added new cog shape\u003C\u002Fli>\n\u003Cli>Added mode to more coordinates options\u003C\u002Fli>\n\u003Cli>Added error prefix to standardize error messages\u003C\u002Fli>\n\u003Cli>Added image preload and name to shape options. Preload an image with a name, so it can be retrieved using only that in the options.\u003C\u002Fli>\n\u003Cli>Added compatibility with another old particles.js library (deprecated but some samples can be found around)\u003C\u002Fli>\n\u003Cli>Added new path plugin, using svg paths as a source\u003C\u002Fli>\n\u003Cli>Added delta to path generators\u003C\u002Fli>\n\u003Cli>Added delay options to particles values animations (\u003Ccode>opacity\u003C\u002Fcode>, \u003Ccode>size\u003C\u002Fcode>, \u003Ccode>color\u003C\u002Fcode>, \u003Ccode>stroke\u003C\u002Fcode>), closes #4985\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Bug Fixes\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Fixed typo in fireworks bundle exported types\u003C\u002Fli>\n\u003Cli>Fixed presets without particles count\u003C\u002Fli>\n\u003Cli>Improved container reset\u003C\u002Fli>\n\u003Cli>Fixed window resize fired during the initialization\u003C\u002Fli>\n\u003Cli>Improved spiral shape\u003C\u002Fli>\n\u003Cli>Fixed \u003Ccode>ICoordinates\u003C\u002Fcode> types\u003C\u002Fli>\n\u003Cli>Fixed some load functions that weren’t async\u003C\u002Fli>\n\u003Cli>Fixed some shapes particle init\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Other Changes\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Improved image shape\u003C\u002Fli>\n\u003Cli>Changed despawn confetti action using opacity animation, was life duration, closes #4978\u003C\u002Fli>\n\u003Cli>All the components for Front End frameworks were removed from this repository, each one now has its own repository. This is mainly for maintainability. It’s easier to support multiple Front End frameworks versions in a dedicated repository instead of a multipurpose monorepository. Vue.js 2.x and 3.x were kept split because they have many differences.\n\u003Cul>\n\u003Cli>Angular (\u003Ccode>ng-particles\u003C\u002Fcode>): https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Fangular\u003C\u002Fli>\n\u003Cli>Astro (\u003Ccode>astro-particles\u003C\u002Fcode>): https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Fastro\u003C\u002Fli>\n\u003Cli>Ember (\u003Ccode>ember-tsparticles\u003C\u002Fcode>): https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Fember\u003C\u002Fli>\n\u003Cli>Inferno (\u003Ccode>inferno-particles\u003C\u002Fcode>): https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Finferno\u003C\u002Fli>\n\u003Cli>jQuery (\u003Ccode>jquery-particles\u003C\u002Fcode>): https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Fjquery\u003C\u002Fli>\n\u003Cli>Lit (\u003Ccode>lit-tsparticles\u003C\u002Fcode>): https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Flit \u003Cem>(WIP)\u003C\u002Fem>\u003C\u002Fli>\n\u003Cli>Preact (\u003Ccode>preact-particles\u003C\u002Fcode>): https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Fpreact\u003C\u002Fli>\n\u003Cli>React (\u003Ccode>react-particles\u003C\u002Fcode>): https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Freact\u003C\u002Fli>\n\u003Cli>Riot (\u003Ccode>riot-particles\u003C\u002Fcode>): https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Friot\u003C\u002Fli>\n\u003Cli>Solid (\u003Ccode>solid-particles\u003C\u002Fcode>): https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Fsolid\u003C\u002Fli>\n\u003Cli>Stencil (`stencil-particles): https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Fstencil \u003Cem>(WIP)\u003C\u002Fem>\u003C\u002Fli>\n\u003Cli>Svelte (\u003Ccode>svelte-particles\u003C\u002Fcode>): https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Fsvelte\u003C\u002Fli>\n\u003Cli>Vue.js 2.x (\u003Ccode>vue2-particles\u003C\u002Fcode>): https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Fvue2\u003C\u002Fli>\n\u003Cli>Vue.js 3.x (\u003Ccode>vue3-particles\u003C\u002Fcode>): https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Fvue3\u003C\u002Fli>\n\u003Cli>Web Components (\u003Ccode>web-particles\u003C\u002Fcode>): https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Fwebcomponents\u003C\u002Fli>\n\u003Cli>WordPress (\u003Ccode>wordpress-particles\u003C\u002Fcode>): https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Fwordpress\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>Removed all presets from this repository for a single one (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Fpresets\" rel=\"nofollow ugc\">https:\u002F\u002Fgithub.com\u002Ftsparticles\u002Fpresets\u003C\u002Fa>) in the @tsparticles organization, this will make easier to contribute to specific presets or create new ones.\u003C\u002Fli>\n\u003Cli>Added global variables to window object, so they are always accessible\u003C\u002Fli>\n\u003Cli>Migrating output to ES2021, it’s widely used and supported\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>= 2.9.3\u003C\u002Fp>\n\u003Ch3>Bug Fixes\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Fixed some plugins, they weren’t loading correctly the options\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>= 2.9.2\u003C\u002Fp>\n\u003Ch3>Bug Fixes\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Added missing shapes to confetti bundle\u003C\u002Fli>\n\u003Cli>Fixed issue with emitters plugin that spawned an unwanted emitters, fixes #4905\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>= 2.9.1\u003C\u002Fp>\n\u003Ch3>Bug Fixes\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Fixed missing plugins in wordpress component\u003C\u002Fli>\n\u003Cli>Fixed confetti bundle package.json\u003C\u002Fli>\n\u003Cli>Fixed confetti.create function in confetti bundle\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>= 2.9.0\u003C\u002Fp>\n\u003Ch3>New Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Creating confetti bundle, easier confetti animations usage. Removed \u003Ccode>confetti\u003C\u002Fcode> function from the preset, this bundle replaces this feature.\u003C\u002Fli>\n\u003Cli>Creating fireworks bundle, easier fireworks animations usage.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Minor Changes\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Added version to the \u003Ccode>Engine\u003C\u002Fcode> object.\u003C\u002Fli>\n\u003Cli>Added \u003Ccode>color\u003C\u002Fcode> and \u003Ccode>colorOffset\u003C\u002Fcode> properties to \u003Ccode>split\u003C\u002Fcode> options.\u003C\u002Fli>\n\u003Cli>Changed default particles \u003Ccode>number\u003C\u002Fcode> value to \u003Ccode>0\u003C\u002Fcode>, the previous default value was meaningless. You must specify a number now, it’s easier to implement \u003Ccode>emitters\u003C\u002Fcode> plugin since you can declare just the \u003Ccode>emitters\u003C\u002Fcode> property without specifying \u003Ccode>0\u003C\u002Fcode> particles. If you need any number, you declare it ignoring the default value.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>= 2.8.0\u003C\u002Fp>\n\u003Ch3>New Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Reworked move.trail options, created a \u003Ccode>fill\u003C\u002Fcode> property that is an object with color and image, closes #4882\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Bug Fixes\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Fixed polygon mask position issues\u003C\u002Fli>\n\u003Cli>Fixed polygon mask scaling issues\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>= 2.7.1\u003C\u002Fp>\n\u003Ch3>New features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Added loop options to sounds audio values\u003C\u002Fli>\n\u003Cli>Added volume buttons to sounds plugin\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Other Changes\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Moved out some plugin specific code from the engine to the dedicated plugin\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>2.7.0\u003C\u002Fh4>\n\u003Ch3>Bug Fixes\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Fixed issue with animation random size, multiplying again the pixel ratio\u003C\u002Fli>\n\u003Cli>Added missing export \u003Ccode>EventType\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Fixed Engine package exports\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>New Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Added shape options to circle, added range (min\u002Fmax object) values to polygon and star shape options\u003C\u002Fli>\n\u003Cli>Changed default file for slim and full bundles, using the bundled file\u003C\u002Fli>\n\u003Cli>Added support for multiple shape drawers declared at once instead of adding a shape drawer multiple times\u003C\u002Fli>\n\u003Cli>Added ranged values in stroke width and opacity properties\u003C\u002Fli>\n\u003Cli>Added loops count to color animations\u003C\u002Fli>\n\u003Cli>Improved density values, now is 1:1 with number on 1080p resolution with pixel ratio of 1 (this is not a breaking change since nothing breaks, but it changes the behavior of existing values)\u003C\u002Fli>\n\u003Cli>Density values now has width\u002Fheight values instead of area\u002Ffactor, for compatibility reason \u003Ccode>width\u003C\u002Fcode> is mapped to \u003Ccode>area\u003C\u002Fcode> and \u003Ccode>height\u003C\u002Fcode> to \u003Ccode>factor\u003C\u002Fcode>.\u003C\u002Fli>\n\u003Cli>Created sounds plugin, with mute\u002Funmute icons\u003C\u002Fli>\n\u003Cli>Added explosion sounds to fireworks preset\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Circle Options\u003C\u002Fh3>\n\u003Cp>In \u003Ccode>particle.shape\u003C\u002Fcode> now it’s possible to set another option to the \u003Ccode>circle\u003C\u002Fcode> shape, \u003Ccode>angle\u003C\u002Fcode>. The new property accepts a \u003Ccode>number\u003C\u002Fcode> or a \u003Ccode>{ min: number; max: number }\u003C\u002Fcode> object, when only \u003Ccode>number\u003C\u002Fcode> it’s going to be \u003Ccode>{ min: 0, max: \u003Cvalue> }\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Cp>This creates partial circles starting from \u003Ccode>min\u003C\u002Fcode> to \u003Ccode>max\u003C\u002Fcode>, both values must be specified in degrees. If this value is ignored the default value is: \u003Ccode>{ min: 0, max: 360 }\u003C\u002Fcode> (the full circle).\u003C\u002Fp>\n\u003Ch3>Examples\u003C\u002Fh3>\n\u003Cpre>\u003Ccode>`\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>…\u003Cbr \u002F>\n  shape: {\u003Cbr \u002F>\n    type: “circle”,\u003Cbr \u002F>\n    options: {\u003Cbr \u002F>\n      circle: {\u003Cbr \u002F>\n        angle: 180\u003Cbr \u002F>\n      }\u003Cbr \u002F>\n    }\u003Cbr \u002F>\n  }\u003Cbr \u002F>\n…\u003Cbr \u002F>\n    `\u003C\u002Fp>\n\u003Cp>This examples creates horizontal half circles\u003C\u002Fp>\n\u003Cpre>\u003Ccode>`\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>…\u003Cbr \u002F>\n  shape: {\u003Cbr \u002F>\n    type: “circle”,\u003Cbr \u002F>\n    options: {\u003Cbr \u002F>\n      circle: {\u003Cbr \u002F>\n        angle: { min: 90, max: 270 }\u003Cbr \u002F>\n      }\u003Cbr \u002F>\n    }\u003Cbr \u002F>\n  }\u003Cbr \u002F>\n…\u003Cbr \u002F>\n    `\u003C\u002Fp>\n\u003Cp>This examples creates vertical half circles\u003C\u002Fp>\n\u003Ch3>Density options\u003C\u002Fh3>\n\u003Cp>The density options are changed a bit, instead of \u003Ccode>area\u003C\u002Fcode>\u002F\u003Ccode>factor\u003C\u002Fcode> values, the \u003Ccode>width\u003C\u002Fcode>\u002F\u003Ccode>height\u003C\u002Fcode> values are introduced and mapped respectively. The default values are changed to \u003Ccode>width\u003C\u002Fcode> \u003Ccode>1920\u003C\u002Fcode> and \u003Ccode>height\u003C\u002Fcode> \u003Ccode>1080\u003C\u002Fcode>, so on a FullHD resolution on device pixel ratio \u003Ccode>1\u003C\u002Fcode> the particles number is the one specified in the options. Since \u003Ccode>width\u003C\u002Fcode> and \u003Ccode>height\u003C\u002Fcode> are multiplied together, they can be swapped and nothing changes.\u003C\u002Fp>\n\u003Cp>The formula for the density is:\u003C\u002Fp>\n\u003Cp>(canvasWidth * canvasHeight) \u002F (densityWidth * densityHeight * devicePixelRatio^2)\u003C\u002Fp>\n\u003Ch3>Notes on existing configurations\u003C\u002Fh3>\n\u003Cp>Since many configs had a \u003Ccode>density.area\u003C\u002Fcode> value of \u003Ccode>800\u003C\u002Fcode>, you’ll see less particles, just a few less. If you have also a \u003Ccode>factor\u003C\u002Fcode> value, you won’t notice any difference. When only \u003Ccode>area\u003C\u002Fcode> is set, if you want to keep the previous configuration, set \u003Ccode>factor\u003C\u002Fcode> to \u003Ccode>1000\u003C\u002Fcode>. Since the default \u003Ccode>factor\u003C\u002Fcode> (\u003Ccode>height\u003C\u002Fcode>) value is \u003Ccode>1080\u003C\u002Fcode> now, the difference should be barely noticeable.\u003C\u002Fp>\n\u003Ch4>2.6.0\u003C\u002Fh4>\n\u003Ch3>Bug Fixes\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Improved angular component id management\u003C\u002Fli>\n\u003Cli>Fixed multiline text shape (and relative demo)\u003C\u002Fli>\n\u003Cli>Fixed issues with links colors and themes, fixes #4841\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>New Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Added new resize object to interactivity options, can change the debounce delay, fixes #4803\u003C\u002Fli>\n\u003Cli>WordPress plugin is now localizable, closes #4807\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Other Changes\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Fixed dependencies charts on README files, closes #4763\u003C\u002Fli>\n\u003Cli>Added reset to path generators, this fixes issues with sea anemone and polygon path plugins\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>2.5.4\u003C\u002Fh4>\n\u003Ch3>New Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Added localization support\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>2.5.3\u003C\u002Fh4>\n\u003Ch3>Bug Fixes\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Fixed issue with reduce duplicates flag, fixes #4805\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>2.5.1\u003C\u002Fh4>\n\u003Ch3>Bug Fixes\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Fixed issue with ES modules\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>2.4.0\u003C\u002Fh4>\n\u003Ch3>New Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Added \u003Ccode>reset\u003C\u002Fcode> method to updaters, this method will be called after a particle loses a life.\u003C\u002Fli>\n\u003Cli>Created the motion plugin for handling motion sickness, I moved this feature from the engine to a plugin since I prefer to have it more customizable. Everyone now can create their own motion sickness plugin, instead of having a standard behavior for everyone\u003C\u002Fli>\n\u003Cli>Added mutation observer to avoid style changes to the canvas when the \u003Ccode>fullScreen\u003C\u002Fcode> option is enabled (default behavior)\u003C\u002Fli>\n\u003Cli>Moved all easing functions to plugin packages, slim now depends on easing-quad since it’s the default value used in repulse and attract\u003C\u002Fli>\n\u003Cli>Added support for multiline text in canvas mask text options, separator and spacing are customizable values\u003C\u002Fli>\n\u003Cli>Added \u003Ccode>aria-hidden=\"true\"\u003C\u002Fcode> to canvas element, fixes #4785\u003C\u002Fli>\n\u003Cli>Removed all canvas context save\u002Frestore calls, this should be a huge improvement to general performances\u003C\u002Fli>\n\u003Cli>Added the particles pool for reusing destroyed particles, every tsParticles instance will have its own pool\u003C\u002Fli>\n\u003Cli>Changed collision absorb code, added \u003Ccode>absorb.speed\u003C\u002Fcode> option to \u003Ccode>collisions\u003C\u002Fcode> section\u003C\u002Fli>\n\u003Cli>Added delay to root options, fixes #4766\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Bug Fixes\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Fixed infection plugin\u003C\u002Fli>\n\u003Cli>Fixed issue with polygon mask when particles bounce on the polygon edges\u003C\u002Fli>\n\u003Cli>Fixed issue with \u003Ccode>rgb()\u003C\u002Fcode>, \u003Ccode>hsl()\u003C\u002Fcode> and \u003Ccode>hsv()\u003C\u002Fcode> values in color option values\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Other Changes\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Refactored plugins to avoid passing options in init functions since it’s no more necessary\u003C\u002Fli>\n\u003Cli>Removed \u003Ccode>initAsync\u003C\u002Fcode> function from plugins, standard \u003Ccode>init\u003C\u002Fcode> is now async for all plugins\u003C\u002Fli>\n\u003Cli>Removed polygon mask plugin from the \u003Ccode>tsparticles\u003C\u002Fcode> package, this is a breaking change only for those that are using it. Since it’s a heavy plugin and not so much used, I have preferred removing it from the \u003Ccode>tsparticles\u003C\u002Fcode> package.\u003C\u002Fli>\n\u003Cli>Changed tsconfig target from es6 to es2019 (less transpilation to a reasonable target). The compatibility is still very high, reducing the bundle size.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>2.3.5\u003C\u002Fh4>\n\u003Ch3>Bug Fixes\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Fixed issue when loading Absorbers and Emitters options\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>2.3.4\u003C\u002Fh4>\n\u003Ch3>Bug Fixes\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Handling “mid” value in links color value\u003C\u002Fli>\n\u003Cli>Fixed links id generation algorithm, it could improve links performances\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Other Changes\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Moved some specific code to correct plugins\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>2.3.3\u003C\u002Fh4>\n\u003Ch3>Release\u003C\u002Fh3>\n\u003Ch4>2.3.1\u003C\u002Fh4>\n\u003Ch3>Release\u003C\u002Fh3>\n","Example block scaffolded with Create Block tool.",4345,"2023-12-26T11:19:00.000Z","6.1.10","5.9","7.0",[101,102,103,104,61],"animations","block","confetti","fireworks","https:\u002F\u002Fparticles.js.org","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Ftsparticles-block.3.0.0.zip",{"slug":108,"name":109,"version":110,"author":111,"author_profile":112,"description":113,"short_description":114,"active_installs":50,"downloaded":115,"rating":116,"num_ratings":117,"last_updated":118,"tested_up_to":16,"requires_at_least":119,"requires_php":18,"tags":120,"homepage":124,"download_link":125,"security_score":26,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"slate","SVG Logo and Text Effects","1.3.1","dashed-slug.net","https:\u002F\u002Fprofiles.wordpress.org\u002Fdashedslug\u002F","\u003Cp>\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FrMM3Nft5-mQ?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwww.dashed-slug.net\u002Fsvg-logo-and-text-effects-wordpress-plugin\" rel=\"nofollow ugc\">SVG Logo and Text Effects\u003C\u002Fa> (or SLATE for short)\u003Cbr \u002F>\nis a WordPress plugin by \u003Ca href=\"http:\u002F\u002Fdashed-slug.net\" rel=\"nofollow ugc\">dashed-slug\u003C\u002Fa>\u003Cbr \u002F>\nthat helps you produce visually stunning text effects using\u003Cbr \u002F>\n\u003Cem>\u003Ca href=\"https:\u002F\u002Fwww.dashed-slug.net\u002Fsvg-logo-and-text-effects-wordpress-plugin\u002Fsvg-shortcodes-tutorial\" rel=\"nofollow ugc\">SVG shortcodes\u003C\u002Fa>\u003C\u002Fem>.\u003C\u002Fp>\n\u003Cp>Use it to reinforce a brand identity, visually enhance your calls-to-action, or simply be more artistic,\u003Cbr \u002F>\nwith \u003Ca href=\"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FScalable_Vector_Graphics\" rel=\"nofollow ugc\">SVG\u003C\u002Fa> text that you can edit at any time.\u003Cbr \u002F>\nAll this, without the need to resort to any image-editing software.\u003C\u002Fp>\n\u003Cp>You can mix and match \u003Cstrong>fonts\u003C\u002Fstrong>, \u003Cstrong>colors\u003C\u002Fstrong>, \u003Cstrong>fill patterns\u003C\u002Fstrong>, and \u003Cstrong>filters\u003C\u002Fstrong>\u003Cbr \u002F>\nto create unique text effects that draw attention to your content.\u003C\u002Fp>\n\u003Ch4>easy SVG text\u003C\u002Fh4>\n\u003Cp>Use \u003Cstrong>shortcodes\u003C\u002Fstrong> to insert fancy, eye catching, \u003Cstrong>editable\u003C\u002Fstrong> and \u003Cstrong>SEO-friendly\u003C\u002Fstrong> text into your posts, pages or custom content.\u003C\u002Fp>\n\u003Ch4>fonts\u003C\u002Fh4>\n\u003Cp>Out of the box, \u003Cstrong>SVG Logo and Title Effects\u003C\u002Fstrong> comes with \u003Cstrong>Google fonts\u003C\u002Fstrong> support. You may extend your font library with \u003Cstrong>font files\u003C\u002Fstrong> that you install yourself.\u003C\u002Fp>\n\u003Ch4>fill patterns\u003C\u002Fh4>\n\u003Cp>Letters are filled with a \u003Cstrong>fill pattern\u003C\u002Fstrong> of your choice. Fill patterns have parameters. Control various sizes, distances and colors to produce unique variations, or let the defaults work for you.\u003C\u002Fp>\n\u003Ch4>filter effects\u003C\u002Fh4>\n\u003Cp>Easily pass your SVG text through filter effects such as the built-in \u003Cstrong>glow\u003C\u002Fstrong> and \u003Cstrong>drop shadow\u003C\u002Fstrong> effects, or any other filter that you install via plugins.\u003C\u002Fp>\n\u003Ch4>presets\u003C\u002Fh4>\n\u003Cp>Save time and use \u003Cstrong>ready-made presets\u003C\u002Fstrong> to style your SVG text. Then you can tweak the text settings to your liking.\u003C\u002Fp>\n\u003Ch4>extensible\u003C\u002Fh4>\n\u003Cp>Download or create \u003Cstrong>plugins\u003C\u002Fstrong> that let you use additional fonts, vector shapes, filter effects, fill patterns, and presets.\u003C\u002Fp>\n\u003Ch4>caching\u003C\u002Fh4>\n\u003Cp>SVG text that has already been rendered once is subsequently loaded from a DB cache, for maximal performance. \u003Cstrong>No compromises on page load speed!\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Ch4>safe fallbacks\u003C\u002Fh4>\n\u003Cp>Old browsers that don’t support SVG rendering will fallback to the closest HTML equivalent. \u003Cstrong>Your text will be displayed no matter what!\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Ch4>documentation\u003C\u002Fh4>\n\u003Cp>Every release comes with \u003Cstrong>PDF documents\u003C\u002Fstrong> covering more than you will ever want to know about this plugin.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>To get the documentation, navigate to the \u003Ca href=\"https:\u002F\u002Fwww.dashed-slug.net\u002Fdownloads\u002F\" rel=\"nofollow ugc\">dashed-slug download area\u003C\u002Fa>\u003Cbr \u002F>\nand make sure to get the \u003Cem>bundle\u003C\u002Fem> release.\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Ch4>registered dashed-slug.net member? enjoy extra features!\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fwww.dashed-slug.net\u002Fsvg-logo-and-text-effects-extensions\u002Fmore-shapes-extension\u002F\" rel=\"nofollow ugc\">More Shapes extension\u003C\u002Fa>:\u003C\u002Fstrong>\u003Cbr \u002F>\nExtends the WordPress SLATE plugin to add more SVG shapes. Shapes are essentially SVG templates that allow more complex text effects.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fwww.dashed-slug.net\u002Fsvg-logo-and-text-effects-extensions\u002Fvisual-composer-integration-extension\u002F\" rel=\"nofollow ugc\">WPBakery Page Builder Integration extension\u003C\u002Fa>:\u003C\u002Fstrong>\u003Cbr \u002F>\nIf you have \u003Cstrong>\u003Ca href=\"http:\u002F\u002Fwww.codecanyon.net\u002Fitem\u002Fvisual-composer-page-builder-for-wordpress\u002F242431?ref=dashed-slug\" title=\"This affiliate link supports the development of dashed-slug.net plugins. Thanks for clicking.\" rel=\"nofollow ugc\">WPBakery Page Builder\u003C\u002Fa>\u003C\u002Fstrong>\u003Cbr \u002F>\nfrom \u003Cstrong>wpbakery\u003C\u002Fstrong> installed, you can avoid writing shortcodes altogether. Tweak your SVG text via a friendly graphical interface when you install VC integration.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fwww.dashed-slug.net\u002Fsvg-logo-and-text-effects-extensions\u002Ftitles-replacement-extension\u002F\" rel=\"nofollow ugc\">Site & Page Titles Replacement extension\u003C\u002Fa>:\u003C\u002Fstrong>\u003Cbr \u002F>\nWith most themes you will be able to easily apply SVG text effects to the \u003Cstrong>site title\u003C\u002Fstrong> or the \u003Cstrong>page\u002Fpost titles\u003C\u002Fstrong> when you install this plugin.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fwww.dashed-slug.net\u002Fsvg-logo-and-text-effects-extensions\u002Fraster-fallbacks-extension\u002F\" rel=\"nofollow ugc\">Raster Fallbacks extension\u003C\u002Fa>:\u003C\u002Fstrong>\u003Cbr \u002F>\nDon’t settle for HTML fallback in legacy browsers. When you install this plugin, your SVG text is automatically rendered to \u003Cstrong>cached PNG image fallbacks\u003C\u002Fstrong>. Fallbacks are shown whenever SVG cannot be rendered for any reason.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>follow the slime\u003C\u002Fh4>\n\u003Cp>The dashed-slug is a social slug:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Facebook: \u003Ca href=\"https:\u002F\u002Fwww.facebook.com\u002Fdashedslug\" rel=\"nofollow ugc\">https:\u002F\u002Fwww.facebook.com\u002Fdashedslug\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Google+: \u003Ca href=\"https:\u002F\u002Fplus.google.com\u002F103549774963556626441\" rel=\"nofollow ugc\">https:\u002F\u002Fplus.google.com\u002F103549774963556626441\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>RSS feed: \u003Ca href=\"https:\u002F\u002Fwww.dashed-slug.net\u002Fcategory\u002Fnews\u002Ffeed\" rel=\"nofollow ugc\">https:\u002F\u002Fwww.dashed-slug.net\u002Fcategory\u002Fnews\u002Ffeed\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Youtube channel: \u003Ca href=\"https:\u002F\u002Fwww.youtube.com\u002Fchannel\u002FUCZ1XhSSWnzvB2B_-Cy1tTjA\" rel=\"nofollow ugc\">https:\u002F\u002Fwww.youtube.com\u002Fchannel\u002FUCZ1XhSSWnzvB2B_-Cy1tTjA\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Donating\u003C\u002Fh3>\n\u003Cp>This is a free plugin.\u003C\u002Fp>\n\u003Cp>If you wish, you may show your support by donating.\u003C\u002Fp>\n\u003Cp>Donating helps the dashed-slug to design, develop, test, release and support more quality WordPress plugins.\u003C\u002Fp>\n\u003Ch4>via flattr\u003C\u002Fh4>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fflattr.com\u002Fprofile\u002Fdashed-slug\" rel=\"nofollow ugc\">flattr the dashed-slug\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch4>via bitcoin\u003C\u002Fh4>\n\u003Cp>\u003Ca href=\"1DaShEDyeAwEc4snWq14hz5EBQXeHrVBxy?dashed-slug?message=donation\" rel=\"nofollow ugc\">send bitcoins to 1DaShEDyeAwEc4snWq14hz5EBQXeHrVBxy\u003C\u002Fa>\u003C\u002Fp>\n","Insert text with visually stunning SVG effects into your WordPress site.",5832,70,2,"2019-11-01T10:36:00.000Z","3.9",[121,122,123,23],"artistic-text","effects","filters","http:\u002F\u002Fwww.dashed-slug.net\u002Fsvg-logo-and-text-effects-wordpress-plugin","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fslate.1.3.1.zip",{"slug":127,"name":128,"version":129,"author":130,"author_profile":131,"description":132,"short_description":133,"active_installs":134,"downloaded":135,"rating":13,"num_ratings":14,"last_updated":136,"tested_up_to":137,"requires_at_least":138,"requires_php":18,"tags":139,"homepage":18,"download_link":142,"security_score":13,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"abovewp-page-loader","AboveWP Page Loader","1.1.0","AboveWP","https:\u002F\u002Fprofiles.wordpress.org\u002Fwpabove\u002F","\u003Cp>AboveWP Page Loader adds a beautiful, customizable loading screen to your WordPress website. The loader appears when visitors navigate to your site and smoothly fades out once the page has loaded, creating a polished and professional user experience.\u003C\u002Fp>\n\u003Ch3>Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Sleek, modern loading animation\u003C\u002Fli>\n\u003Cli>Multiple animation options:\n\u003Cul>\n\u003Cli>Default spinner\u003C\u002Fli>\n\u003Cli>Animated SVGs\u003C\u002Fli>\n\u003Cli>Custom images (including GIFs)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>Displays your site logo or site name during loading\u003C\u002Fli>\n\u003Cli>Smooth fade-out transition when the page is ready\u003C\u002Fli>\n\u003Cli>Customizable colors to match your brand\u003C\u002Fli>\n\u003Cli>Adjustable animation size, duration, and delay settings\u003C\u002Fli>\n\u003Cli>Smooth page transitions between internal links\u003C\u002Fli>\n\u003Cli>Responsive design that works on all devices\u003C\u002Fli>\n\u003Cli>Lightweight with minimal impact on page performance\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Usage\u003C\u002Fh3>\n\u003Cp>After activation, the page loader will automatically appear on your website. You can customize the following settings:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Enable\u002FDisable\u003C\u002Fstrong>: Turn the page loader on or off\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Animation Type\u003C\u002Fstrong>: Choose between spinner, SVG, or custom image\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Animation Size\u003C\u002Fstrong>: Set the size of your animation\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Animation Duration\u003C\u002Fstrong>: Set how long the fade-out animation lasts\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Delay Before Hiding\u003C\u002Fstrong>: Set how long to wait before hiding the loader after the page loads\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Loader Color\u003C\u002Fstrong>: Choose a color that matches your brand (for spinner animation)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Using SVG Animations\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Select “Animated SVG” as your animation type\u003C\u002Fli>\n\u003Cli>Upload an SVG file or enter the URL to an SVG file\n\u003Cul>\n\u003Cli>For best results, use an SVG with built-in animations\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>Using Custom Images\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Select “Custom Image” as your animation type\u003C\u002Fli>\n\u003Cli>Upload an image or enter the URL to an image file\n\u003Cul>\n\u003Cli>Animated GIFs work great for this option\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>Credits\u003C\u002Fh3>\n\u003Cp>Developed by \u003Ca href=\"https:\u002F\u002Fabovewp.com\" rel=\"nofollow ugc\">AboveWP\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>License\u003C\u002Fh3>\n\u003Cp>This plugin is licensed under the GPL v2 or later.\u003C\u002Fp>\n\u003Cp>This program is free software; you can redistribute it and\u002For\u003Cbr \u002F>\nmodify it under the terms of the GNU General Public License\u003Cbr \u002F>\nas published by the Free Software Foundation; either version 2\u003Cbr \u002F>\nof the License, or (at your option) any later version.\u003C\u002Fp>\n\u003Cp>This program is distributed in the hope that it will be useful,\u003Cbr \u002F>\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\u003Cbr \u002F>\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\u003Cbr \u002F>\nGNU General Public License for more details.\u003C\u002Fp>\n","A sleek and elegant page loader for WordPress websites by AboveWP.",60,760,"2026-02-27T20:54:00.000Z","6.9.4","5.0",[20,140,141,23],"loading-screen","page-loader","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fabovewp-page-loader.1.1.0.zip",{"attackSurface":144,"codeSignals":164,"taintFlows":171,"riskAssessment":172,"analyzedAt":179},{"hooks":145,"ajaxHandlers":152,"restRoutes":153,"shortcodes":154,"cronEvents":163,"entryPointCount":117,"unprotectedCount":27},[146],{"type":147,"name":148,"callback":149,"file":150,"line":151},"action","wp_enqueue_scripts","caldersvg_frontend_stylesheet","caldersvg.php",50,[],[],[155,159],{"tag":156,"callback":157,"file":150,"line":158},"caldersvg","caldersvg_display_animation_fn",42,{"tag":160,"callback":161,"file":150,"line":162},"caldersvgjs","caldersvgjs_display_animation_fn",46,[],{"dangerousFunctions":165,"sqlUsage":166,"outputEscaping":168,"fileOperations":27,"externalRequests":27,"nonceChecks":27,"capabilityChecks":27,"bundledLibraries":170},[],{"prepared":27,"raw":27,"locations":167},[],{"escaped":27,"rawEcho":27,"locations":169},[],[],[],{"summary":173,"deductions":174},"The calder-svg plugin version 2.1 exhibits a strong security posture based on the provided static analysis and vulnerability history. The absence of dangerous functions, the exclusive use of prepared statements for SQL queries, and the proper escaping of all outputs indicate a commitment to secure coding practices. Furthermore, the lack of file operations and external HTTP requests reduces the potential attack surface. The plugin also has no recorded vulnerabilities, suggesting a history of stability and security.\n\nWhile the static analysis reveals no direct vulnerabilities like unescaped output or raw SQL queries, a key area of concern is the complete absence of nonce checks and capability checks across its entry points. Although the attack surface is minimal and there are no unprotected entry points identified in this analysis, the lack of these fundamental WordPress security mechanisms means that if any future vulnerabilities were introduced, they could be exploited more easily. The plugin relies heavily on the assumption that its limited entry points are inherently secure, which is a risky approach.\n\nIn conclusion, calder-svg v2.1 is currently in a very good security state, with no known vulnerabilities and robust handling of common risk areas like SQL injection and XSS. However, the complete omission of nonce and capability checks is a significant oversight that, while not a direct vulnerability in itself based on this data, creates a potential weakness that could be exploited if other vulnerabilities are discovered or introduced in the future.",[175,177],{"reason":176,"points":11},"Missing nonce checks",{"reason":178,"points":11},"Missing capability checks","2026-03-17T00:59:08.526Z",{"wat":181,"direct":196},{"assetPaths":182,"generatorPatterns":188,"scriptPaths":189,"versionParams":190},[183,184,185,186,187],"\u002Fwp-content\u002Fplugins\u002Fcalder-svg\u002Fcss\u002Fcaldersvg.css","\u002Fwp-content\u002Fplugins\u002Fcalder-svg\u002Fjs\u002Fcaldersvg-frontend.js","\u002Fwp-content\u002Fplugins\u002Fcalder-svg\u002Flibs\u002Fanime\u002F2.0\u002Fanime.min.js","\u002Fwp-content\u002Fplugins\u002Fcalder-svg\u002Flibs\u002Fsvg.js\u002F2.5.0\u002Fsvgjs.min.js","\u002Fwp-content\u002Fplugins\u002Fcalder-svg\u002Flibs\u002Fvivus\u002F0.4.0\u002Fvivus.min.js",[],[184,187,186,185],[191,192,193,194,195],"\u002Fwp-content\u002Fplugins\u002Fcalder-svg\u002Fjs\u002Fcaldersvg-frontend.js?ver=","\u002Fwp-content\u002Fplugins\u002Fcalder-svg\u002Fcss\u002Fcaldersvg.css?ver=","\u002Fwp-content\u002Fplugins\u002Fcalder-svg\u002Flibs\u002Fvivus\u002F0.4.0\u002Fvivus.min.js?ver=","\u002Fwp-content\u002Fplugins\u002Fcalder-svg\u002Flibs\u002Fsvg.js\u002F2.5.0\u002Fsvgjs.min.js?ver=","\u002Fwp-content\u002Fplugins\u002Fcalder-svg\u002Flibs\u002Fanime\u002F2.0\u002Fanime.min.js?ver=",{"cssClasses":197,"htmlComments":198,"htmlAttributes":199,"restEndpoints":200,"jsGlobals":201,"shortcodeOutput":203},[],[],[],[],[202],"window.svgArray",[204,205],"id=\"caldersvg-id-","window.svgArray = "]