=== Brxify - Elementor To Bricks Converter ===
Contributors: (this should be a list of wordpress.org userid's)
Tags: elementor, bricks, migration, converter
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
Stable tag: 0.3.3
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Convert Elementor-built content into clean Bricks drafts.

== Description ==

Brxify helps you migrate Elementor-built pages into Bricks.

* Writes Bricks onto the same page or post (Elementor data is left in place)
* Visitors keep seeing Elementor until you deactivate it
* Bottom-left B on the live URL: hover to compare Bricks, click for leftovers
* Theme Builder items and JSON from another site still create a new Bricks template or page
* Generates a conversion report (stored in post meta)

This plugin requires the Bricks theme to be active.

== Installation ==

1. Upload the plugin folder to the `/wp-content/plugins/` directory.
2. Activate the plugin through the 'Plugins' menu in WordPress.
3. Go to Brxify.

== Frequently Asked Questions ==

= Does it overwrite my Elementor pages? =
On the same site it writes Bricks meta onto that page and leaves `_elementor_data` alone. Visitors still see Elementor until you deactivate Elementor. Theme Builder and imported JSON still create a new destination. Deleting the conversion removes only Brxify/Bricks keys, not the post.

= Does it convert every widget perfectly? =
Not yet. Unsupported widgets are inserted as placeholders and listed in the conversion report.

== Changelog ==

= 0.3.3 =
* Elementor popup chrome: 640px width, dark overlay, and a close X when the kit left page settings empty (those are Elementor’s defaults).

= 0.3.2 =
* Popup/template conditions read `elementor_pro_conditions` when `_elementor_conditions` is empty (kit Theme Builder rules).
* Popup page-load, scroll, and exit-intent map to Bricks template interactions. Other timing rules stay leftover.
* Header “open popup” icons become Bricks click → show popup instead of a dead `{elementor_popup}` link.
* Image Media File + lightbox writes Bricks `link: lightbox`. Posts excerpt stays hidden when Elementor hid it.
* Batch log View / Bricks are small outline buttons.

= 0.3.1 =
* Reports lists converted Bricks and Elementor templates, not only public pages.
* Reports "What's left" includes Motion FX leftover, not only unsupported widgets.
* B badge leftover list shows on hover and stays reachable; Mark fixed clears the count. Motion FX leftover explains mouse-track vs Bricks scroll parallax.
* Imported drafts and converted templates open the Bricks preview by default.
* Elementor kits on a Bricks theme no longer flash then go blank (#brx-content flex).
* New converts keep column background images (classic color no longer paints a solid gradient over them) and stack absolute images above decorative spacers.
* Reconvert opens the Convert tab with a live log, sends the kit, and no longer drops headings/posts/testimonials when the engine has no WP_Query.

= 0.3.0 =
* Admin redesign across Export, Convert, Reports and Account: new type scale, spacing and colour system shared with brxify.com.
* Inter is bundled locally in assets/fonts (latin subset loads by default, latin-ext is unicode-range gated). No external font requests.
* Dashicons replaced with an inline SVG icon set on all Brxify screens; the same icon table is available to admin JS via window.brxifyIcon().
* Export: searchable document picker with type filter and a sticky selection bar.
* Convert: single and batch conversion merged into one "Choose a source" flow (upload a file, or pick pages on this site).
* Reports: five-metric stat strip, View / Open in Bricks as row actions, Reconvert and Revert moved into the row drawer, danger zone collapsed by default.
* Account: plan and credit meter, cycle usage, licence connection status and install facts on one screen.
= 0.2.29 =
* Frontend B: Elementor is the default public view. Converted view is ?brxify_preview=on on this URL only (no sticky site-wide cookie). Switching back strips leftover Bricks/Elementor preview query args.
= 0.2.28 =
* Soft-20 Path B: pack_kit_settings merges kit meta `_elementor_global_classes` (get_atomic_global_classes) into convert kit payload.
= 0.2.27 =
* Export tab: What gets exported list uses dashicons (media-code, layout, art, editor-textcolor) with paper/hairline density.

= 0.2.26 =
* Account tab credit/legal blurb restyled as paper/hairline card (match License Connect).
* Import tab: remove Need a hand support banner (Report tab keeps it).

= 0.2.25 =
* Soft-20: echo top-level elementor_version on single convert and batch job item payloads (API_Client helper).

= 0.2.24 =
* Plugins update: Check for updates refetches api.brxify.com (no 1-hour stale cache). Offer is injected after Freemius so the yellow update row is not stripped.

= 0.2.23 =
* Reports and the frontend B: Reconvert (1 credit, overwrites Bricks only) and Revert (this page only; Elementor is never deleted).
* Unsupported widgets stay hidden for visitors; admins see a dashed HTML placeholder on the converted view.
* Punch list: Mark fixed / Undo. Reconvert and Revert clear those marks.
* Danger Zone keeps Remove all conversions; extra wipe tools stay playground-only.
* Delete/rollback never removes an Elementor page, post, or template.

= 0.2.22 =
* Frontend B sits bottom-left: hover to compare public vs converted, click for polish leftovers (unsupported widgets, leftover CSS, conditions).
* After a same-page convert, View public page is the main action so the B is the next step.
* Reports: cutover hint while Elementor is still active.
* Plugins list author is Brxify (brxify.com). Reports support card is two columns at the top.
* Account: connecting a license uses Terms and Privacy (no fake checkbox).

= 0.2.21 =
* Plugin update notice no longer waits on wordpress.org (api.brxify.com only).

= 0.2.20 =
* Account tab (was Plans): connect the license key here; buy on brxify.com.
* Plugins list uses Account / Connect license instead of the Freemius activate popup.
* Contact support opens https://customers.freemius.com/support. Reports can copy a snapshot (no license key) for tickets.

= 0.2.19 =
* Plugins list can update the client from api.brxify.com (trial, skip-connect, and paid).
* Playground / engine installs are never overwritten by the thin client zip.

= 0.2.18 =
* Elementor Pro widget Display Conditions map to Bricks native Conditions (login, role, page/post, dates, weekday, referrer).
* Template widgets remap Elementor IDs to converted Bricks drafts (same site or same export zip).

= 0.2.17 =
* Batch View/Bricks links use page permalinks (?page_id=) so draft pages no longer 404.
* Convert connect timeout raised; a failed API connection no longer paints 0 credits.

= 0.2.16 =
* Same-page write: convert onto the live post instead of a clone draft.
* Visitors stay on the public page until Elementor is deactivated.
* On-page compare chip: public page vs converted view (visitors stay on public).
* Export: multi-select pages; one file stays JSON, two or more download a zip of those JSON files.
* Import: one JSON still uses Convert; a zip or multiple files uses Batch. Apply globals is shared.

= 0.2.15 =
* After convert, regenerate Bricks frontend CSS so Google fonts load without a builder Save.

= 0.2.14 =
* Reports: Clear Global Classes empties all Bricks global classes (not only brxify-*).
* Playground SaaS Brain: Build client zip button JSON-safe and version-matched.

= 0.2.6 =
* Prefer SaaS max_batch from /v1/account (fallback 5). Drain backoff on rate_limited/idle.

= 0.2.4 =
* Batch poll soft-retry; resume inject for converted; UI Converting until OK

= 0.2.2 =
* Convert-page Batch UI polish; banner Pricing removed; denser Batch panel.

= 0.2.0 =
* MVP: Convert Elementor pages to new Bricks drafts.
