=== Sweipe Widgets for Elementor & Gutenberg ===
Contributors: mobiusstudio0
Tags: elementor, widgets, elementor addons, gutenberg, blocks, table, testimonials
Requires at least: 6.5
Tested up to: 7.1
Requires PHP: 8.0
Stable tag: 1.0.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Forty-three mobile-first Elementor widgets, plus Gutenberg blocks for the components that work without a page builder.

== Description ==

Sweipe Widgets adds one category to the Elementor editor with forty-three widgets, and a "Sweipe" category to the Gutenberg editor with the components that need no page builder. They were built for the Sweipe theme, where they power eleven demo sites, and they work on any theme.

**Gutenberg blocks**

* Stats, Call to Action and Meta Row, rendered by the same PHP the widgets render — a page looks the same whichever editor built it
* More components follow the same route; the widgets stay the complete set

**Elementor widgets** (require free Elementor)

**Content**

* Posts, Loop Grid and Loop Carousel, with load-more and live term filtering
* Testimonials and Portfolio, with their own post types
* Reviews, backed by WordPress comments with a star rating
* Table, with headings, column classes and a phone layout that stacks rows
* Accordion, Table of Contents, Blockquote, Meta Row
* Stats, Timeline, Progress Tracker, Pricing Table

**Forms and users**

* Form, with seventeen field types, email, redirect and webhook actions, and a submissions screen in the admin
* Login and registration, with rate limiting
* Search

**Marketing and media**

* Countdown, Call to Action, Flip Box, Animated Headline, Marquee, Chips, Switches
* Gallery, Slides, Media Carousel, Image Comparison, Hotspot, Lottie, Video Playlist
* Share Buttons, Social Icons, and the Facebook Button, Comments, Embed and Page widgets

**Navigation**

* Nav Menu, Breadcrumbs, Post Navigation, Off Canvas

Every widget is styled through a small set of design tokens. On the Sweipe theme the theme sets them; on any other theme the plugin ships neutral defaults, and each widget's own controls override them.

The two libraries the widgets use ship inside the plugin, and nothing is loaded from a CDN: [Embla Carousel](https://github.com/davidjerleke/embla-carousel) 8.6 for the carousels and [lottie-web](https://github.com/airbnb/lottie-web) 5.12.2 (light build: SVG only, no expressions) for the Lottie widget, both MIT-licensed. The carousel script, dist/frontend/carousels.js, is built with Vite from the TypeScript in src/frontend/, which is included, and the Embla packages from npm. Every other minified script sits next to its readable source.

= What is not in this plugin =

The WooCommerce widgets, the demo importer, the theme options panel and the AI site builder are part of the [Sweipe theme](https://mobius.studio/themes/sweipe-responsive-wordpress-mobile-theme/). This plugin makes no requests to the author's servers. The widgets that show content from other services (Facebook, YouTube, Vimeo) are listed under External services, with what each one loads and when.

== Installation ==

1. Install and activate Sweipe Widgets for Elementor & Gutenberg.
2. Open a page in the block editor and look for the "Sweipe" category — no page builder needed.
3. To use the widgets as well, install and activate free Elementor and look for the "Sweipe" category in its panel.

If the Sweipe theme's companion plugin is active, this plugin does nothing, because the companion plugin already registers every widget.

== Frequently Asked Questions ==

= Do I need the Sweipe theme? =

No. The widgets carry their own default styling. The theme adds a mobile-first design, eleven demos and the AI tools; it is not required.

= Does it need Elementor Pro? =

No. Free Elementor is enough for every widget.

= Do the blocks need Elementor? =

No. The Gutenberg blocks register on any site; Elementor only adds the widget half of the plugin.

= Where do form submissions go? =

To the email address you set in the Form widget's actions, and to Sweipe → Form Submissions in the admin, which stores them in two tables of their own and exports CSV.

= Does the plugin send anything anywhere? =

Not to its author: it makes no requests to our servers and collects nothing. The Facebook widgets and the Video Playlist load those services on the pages that use them; External services below says exactly when, and what those services receive.

== External services ==

A few widgets connect to third-party services, and only on pages where you use them.

**Facebook.** The Facebook Button, Comments, Embed and Page widgets. On a page that contains one of them, and only once you have entered a Facebook App ID under Settings → Sweipe Widgets, the visitor's browser loads Facebook's JavaScript SDK from connect.facebook.net so that Facebook can draw the button, comments, post or page. Facebook receives the visitor's IP address, browser details and the page address, and may set cookies. [Terms](https://www.facebook.com/legal/terms), [Privacy Policy](https://www.facebook.com/privacy/policy/).

**YouTube.** The Video Playlist widget, for YouTube videos you add. Unless you upload your own thumbnail, each item's thumbnail loads from img.youtube.com with the page; the player loads from youtube.com when a visitor starts a video, or straight away if you switch on autoplay without lazy loading. YouTube receives the visitor's IP address, browser details and the page address, and may set cookies. [Terms](https://www.youtube.com/t/terms), [Google Privacy Policy](https://policies.google.com/privacy).

**Vimeo.** The Video Playlist widget, for Vimeo videos you add. The player loads from player.vimeo.com when a visitor starts a video, or straight away with autoplay. Vimeo receives the same browser details and may set cookies. [Terms](https://vimeo.com/terms), [Privacy Policy](https://vimeo.com/privacy).

**Share links.** The Share Buttons and Blockquote widgets link to the share pages of Facebook, X, LinkedIn, Pinterest, Reddit, Telegram and WhatsApp. Nothing loads from those services until a visitor clicks one; the click opens that service with the page's address and title.

**Addresses you enter.** A Form widget with a Webhook action sends each submission to the URL you enter, and a Lottie widget set to External URL loads its animation file from the address you give. Neither happens unless you set it up.

== Screenshots ==

1. The Sweipe category in the Elementor panel.
2. The Table widget stacking into label and value rows on a phone.
3. The Loop Grid on Astra, styled by the bundled tokens.
4. The form submissions screen.

== Changelog ==

= 1.0.0 =
* First release: forty-three general widgets from Sweipe companion plugin 1.2.2.
