=== ZenBlocks ===
Contributors: tsumiki
Tags: blocks, gutenberg, button, responsive, design
Requires at least: 6.0
Tested up to: 6.9
Requires PHP: 7.4
Stable tag: 1.1.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Custom blocks for the WordPress block editor with responsive controls and advanced button styling.

== Description ==

ZenBlocks extends the WordPress block editor (Gutenberg) with custom blocks and advanced styling controls. Design responsive, professional buttons and UI elements — without writing any code.

**Button Basic Block**

Create fully customizable buttons with granular control over every visual aspect:

- **Colors & Backgrounds** — Solid color, gradient, or image backgrounds with hover state support
- **Typography** — Font family, size, weight, line height, and letter spacing
- **Layout** — Width, height, padding, and margin with fine-grained control
- **Borders** — Width, style, color, and independent corner radius
- **Icons** — 1,500+ built-in icons with size, color, and position options
- **Hover Effects** — Separate styling for hover state with smooth transitions
- **32 Design Presets** — Start from professionally designed templates and customize freely

**Responsive Design**

Every setting supports 4 breakpoints (PC / Tablet L / Tablet / Mobile) so your buttons look great on all devices. Customize values per device or let them cascade automatically.

**Performance**

ZenBlocks generates optimized CSS per page — only the styles you actually use are loaded on the frontend. No bloated global stylesheets.

**Pro Features (Optional)**

Additional features such as animations, thumbnails, and background video are available through a separate plugin (ZenBlocks Pro) from [zenblockswp.com](https://zenblockswp.com/).

== Source Code ==

This plugin includes compiled JavaScript and CSS files in the `build/` directory. The original uncompiled source code is included in the `src/` directory of this plugin.

To build from source:

1. Install Node.js (v18 or later)
2. Run `npm install` in the plugin root directory
3. Run `npm run build` to generate the production files in `build/`

The build process uses `@wordpress/scripts` (webpack-based).

== External services ==

This plugin includes an optional media search feature that connects to third-party image and video APIs. These services are only used when the user configures API keys in the plugin settings and actively searches for media within the block editor. No data is sent to these services during normal frontend usage.

= Unsplash =

Used for searching and importing free-to-use images in the block editor.

* Data sent: search query, page number
* When: only when the user searches for images via the Unsplash media panel in the editor
* Service provider: [Unsplash](https://unsplash.com/)
* API endpoint: `https://api.unsplash.com/`
* Terms of Service: [https://unsplash.com/terms](https://unsplash.com/terms)
* Privacy Policy: [https://unsplash.com/privacy](https://unsplash.com/privacy)
* API Terms: [https://unsplash.com/api-terms](https://unsplash.com/api-terms)

= Pexels =

Used for searching and importing free images and videos in the block editor.

* Data sent: search query, page number
* When: only when the user searches for media via the Pexels media panel in the editor
* Service provider: [Pexels](https://www.pexels.com/)
* API endpoint: `https://api.pexels.com/`
* Terms of Service: [https://www.pexels.com/terms-of-service/](https://www.pexels.com/terms-of-service/)
* Privacy Policy: [https://www.pexels.com/privacy/](https://www.pexels.com/privacy/)

= Pixabay =

Used for searching and importing free images and videos in the block editor.

* Data sent: search query, page number
* When: only when the user searches for media via the Pixabay media panel in the editor
* Service provider: [Pixabay](https://pixabay.com/)
* API endpoint: `https://pixabay.com/api/`
* Terms of Service: [https://pixabay.com/service/terms/](https://pixabay.com/service/terms/)
* Privacy Policy: [https://pixabay.com/service/privacy/](https://pixabay.com/service/privacy/)

= Openverse =

Used for searching and importing CC0-licensed images in the block editor.

* Data sent: search query, page number
* When: only when the user searches for images via the Openverse media panel in the editor
* Service provider: [Openverse](https://openverse.org/) (a project by WordPress.org)
* API endpoint: `https://api.openverse.org/`
* Terms of Service: [https://openverse.org/terms-of-use](https://openverse.org/terms-of-use)
* Privacy Policy: [https://openverse.org/privacy](https://openverse.org/privacy)

= ZenBlocks Pro Services (zenblockswp.com) =

Used for retrieving Pro upgrade pricing information on the plugin settings page.

* Data sent: locale (for currency conversion)
* When: only when the admin settings page is loaded
* Service provider: [ZenBlocks](https://zenblockswp.com/) (Tsumiki LLC.)
* API endpoint: `https://zenblockswp.com/wp-json/zenblocks/v1/pricing`
* Terms of Service: [https://zenblockswp.com/terms](https://zenblockswp.com/terms)
* Privacy Policy: [https://zenblockswp.com/privacy](https://zenblockswp.com/privacy)

= Icon Libraries (bundled, no external requests) =

This plugin bundles SVG icon data from the following open-source icon libraries. All icon data is included locally within the plugin files — **no external HTTP requests are made to any of these services** at any time (neither in the editor nor on the frontend). The URLs listed below are the project homepages and license references for attribution purposes only.

* **Feather Icons** — MIT License, by Cole Bemis
  * Website: [https://feathericons.com/](https://feathericons.com/)
  * License: [https://github.com/feathericons/feather/blob/main/LICENSE](https://github.com/feathericons/feather/blob/main/LICENSE)

* **Font Awesome Free** — Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT, by Fonticons Inc.
  * Website: [https://fontawesome.com/](https://fontawesome.com/)
  * License: [https://fontawesome.com/license/free](https://fontawesome.com/license/free)

* **Tabler Icons** — MIT License, by Paweł Kuna & Tabler Team
  * Website: [https://tabler-icons.io/](https://tabler-icons.io/)
  * License: [https://github.com/tabler/tabler-icons/blob/main/LICENSE](https://github.com/tabler/tabler-icons/blob/main/LICENSE)

* **Heroicons** — MIT License, by Tailwind Labs
  * Website: [https://heroicons.com/](https://heroicons.com/)
  * License: [https://github.com/tailwindlabs/heroicons/blob/master/LICENSE](https://github.com/tailwindlabs/heroicons/blob/master/LICENSE)

* **Lucide Icons** — ISC License, by Lucide Contributors
  * Website: [https://lucide.dev/](https://lucide.dev/)
  * License: [https://github.com/lucide-icons/lucide/blob/main/LICENSE](https://github.com/lucide-icons/lucide/blob/main/LICENSE)

* **Remix Icon** — Apache License 2.0, by Remix Design
  * Website: [https://remixicon.com/](https://remixicon.com/)
  * License: [https://github.com/Remix-Design/RemixIcon/blob/master/License](https://github.com/Remix-Design/RemixIcon/blob/master/License)

== Installation ==

1. Upload the `zenblocks` folder to the `/wp-content/plugins/` directory.
2. Activate the plugin through the `Plugins` menu in WordPress.
3. Open the block editor and add blocks from the `ZenBlocks Elements` category.

== Frequently Asked Questions ==

= What are the minimum requirements? =

WordPress 6.0 or higher, PHP 7.4 or higher.

= Does this plugin work without Pro? =

Yes. Core block functionality is available in the free version.

= Where can I manage plugin settings? =

Go to `Settings > ZenBlocks` in wp-admin.

== Screenshots ==

1. Button Basic block in the editor with design preset applied
2. Sidebar settings panel — color, border, and layout controls
3. Design preset selector with 32 built-in templates
4. Frontend button display example
5. Responsive breakpoint controls (PC / Tablet L / Tablet / Mobile)
6. ZenBlocks settings page with license management

== Changelog ==

= 1.1.0 =

- Enhanced Pro feature protection with dual-layer security (PHP filter + CSS separation)
- Improved free version CSS output (reduced bundle size by removing Pro-only animation styles)

= 1.0.1 =

- Added hover state indicator in toolbar and layer z-index settings
- Added band border panel with responsive controls
- Added block inserter preview and search keywords
- Added auto YouTube thumbnail as poster and autoplay notice in editor
- Added Dutch (nl_NL) locale and translation build automation
- Improved media/video selector UI with icon-only buttons
- Improved design preset UI and PRO badge presentation
- Fixed preset PRO badge detection, hover preview, and border toggle issues
- Fixed video poster behavior and translation loading for shared components
- Fixed Plugin Check compliance issues
- Removed all debug console statements from source files

= 1.0.0 =

- Initial release of ZenBlocks.

