PluginProbe
CartFlows – Funnel Builder & Checkout Plugin for WooCommerce / 3.3.0
CartFlows – Funnel Builder & Checkout Plugin for WooCommerce v3.3.0
3.3.0 3.2.1 3.2.0 3.1.4 3.1.3 3.1.2 3.1.1 3.1.0 3.0.1 trunk 1.0.4 1.1.0 1.1.0.1 1.1.1 1.1.10 1.1.11 1.1.12 1.1.13 1.1.14 1.1.15 1.1.16 1.1.17 1.1.18 1.1.19 1.1.2 All 162 releases
cartflows / modules / gutenberg / architecture.md

architecture.md in CartFlows – Funnel Builder & Checkout Plugin for WooCommerce 3.3.0, at modules/gutenberg/architecture.md

18 lines 1.3 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 ---
2 module: gutenberg
3 ---
4
5 # gutenberg
6
7 ## Responsibility
8
9 Owns the Gutenberg/block-editor surface for CartFlows step post types: registers four `wcfb/*` blocks (next-step-button, checkout-form, optin-form, order-detail-form), builds their editor bundle, generates per-block frontend CSS and Google-font links from saved block attributes, and serves the editor's live shortcode previews over admin-ajax.
10
11 Ownership stops at the shortcodes themselves — every preview and every frontend render is `do_shortcode( '[cartflows_*]' )`.
12
13 ## Why it is this way
14
15 Three contracts here are invisible from any single file. The attribute schema is split across JS, PHP registration and PHP config, with a different consequence for each omission. The editor preview is an AJAX round-trip whose refresh depends on a hand-maintained diff list and an `isHtml` flag doubling as a loop guard, because the `withSelect` mapper that triggers it is supposed to be pure. And the frontend CSS/font pipeline has a strict `wp` → `wp_head:80` → `wp_head:120` → `wp_footer:1000` ordering over four static mutable globals, with the fonts collected as a side effect of CSS generation.
16
17 Much of `src/components/` and `src/controls/` is verbatim Spectra code, which is why the editor bundle depends on a Spectra-owned JS global.
18