version 5.8.0 ( updated 06-19-2026 )
- Added Tooltip module.
- Fixed an issue where WordPress automatic update scrape requests could regenerate incomplete Divi 5 homepage CSS, causing builder styles to disappear.
- Fixed an issue where pages visited with specific URL paramaters could generate invalid CSS for pages containing loops.
- Fixed VB perf regression by removing update-transient priming from perf-mode bootstrap and restored CI perf gate thresholds.
- Fixed an issue where a thin sliver of the next Group Carousel slide could show at certain viewport widths.
- D4 Search migration now keeps Search native and moves the legacy free-form CSS rule into module free-form CSS instead of leaving it at the page level.
- Fixed an issue where saving a page in the Visual Builder could purge all LiteSpeed Cache entries instead of only the edited page.
- Fixed Button Options selection and global module sync tracking edge cases by aligning field change payload typing and handling immutable attribute trees correctly.
- Fixed an issue where Section Area Background Color could fail to apply in certain Theme Builder front-end layouts, causing sections to appear white.
- Fixed false CSS linter errors when using nested selectors without & in Free Form CSS and other Divi 5 CodeMirror CSS fields.
- Fixed Image module lightbox not opening inside Group Carousel after the carousel looped back to the first slide.
- Fixed workspace save not preserving the selected sidebar tab when multiple tabs are open in the same row.
- Fixed default Heading/Body global font variable labels, aligned VB/FE font resolution using shared/customizer store data, and resolved frontend fallback issues for default-like customizer font values.
- Fixed Contact Form 7 Styler button icon and rounded corners on hover.
- Fixed control layering in the Slider Module so arrows and dot navigation stay above high z-index Slide content.
- Fixed heading level set through Option Group or module presets not applying to rendered HTML on the frontend and Visual Builder.
- Fixed an issue where the Pagination module did not display custom Previous link text on hover.
- Fixed an issue where input fields could stop responding after saving the Visual Builder.
- Fixed an issue where the top-bar Clear Layout modal would not reopen after being closed.
- Fixed Social Media Follow icon font size and icon color being unavailable for editing in the sticky state.
- Fixed an issue where Divi Cloud duplicate and copy actions could save empty layout content to the cloud when a layout failed to download or export correctly.
- Fixed an issue where Theme Customizer background settings could reset after activating a child theme.
- Preserved the parent theme background color and image when activating a child theme.
- Fixed a PHP deprecated warning when using custom CSS on the Contact Form module's Contact Button field.
- Fixed an issue where the Layers panel could unexpectedly jump when activating modules that were already visible or when selecting modules directly inside Layers.

version 5.7.4 ( updated 06-12-2026 )
- Added new workspace management system, allowing users to create customizable workspaces that encapsulate default builder settings and modal positioning.
- Added new command center comments for switching workspaces and updating existing workspaces.
- Auto-closing panels will no longer auto-close when docked.
- Fixed an issue where third-party shortcode modules could remain in backward compatibility mode in Divi 5 when content did not include a core Divi shortcode token.
- Fixed "create preset from current styles" not capturing nested composite group attributes when creating a group preset.

version 5.7.3 ( updated 06-10-2026 )
- Fixed dropdown panels jumping horizontally after entrance animation when dropdown alignment was set to center or end.
- Fixed an issue where the Loop Element setting could incorrectly appear in the Modified Styles filter with a reset option after the loop was turned off.
- Fixed Breadcrumbs modules so Justify Content works on newly inserted modules without toggling Layout Direction first.

version 5.7.2 ( updated 06-10-2026 )
- Fixed saved layouts not loading in the Visual Builder library on hosts with strict MySQL join limits, and added a clear error when the library query still cannot run.
- Added a Visual Builder filter so third-party extensions can append controls next to module field labels in the module settings modal, with documentation and a copy-paste example.
- Fixed icons sitting at the top of button-options fields when options used icons without label text.
- Fixed icon alignment in Visual Builder button-option controls so icon-only choices render vertically centered.
- Fixed a thin section divider seam that could appear during load and responsive rendering in Divi 5.
- Fixed an issue where group preset styles (including border radius) could fail to apply in the Visual Builder when preset class names were not attached correctly.

version 5.7.1 ( updated 06-08-2026 )
- Fixed incorrect heading font sizes on the front-end and in the Visual Builder when Text modules use option group presets, by removing preset-duplicate values from module attributes during import and at render time so preset CSS is no longer overridden by module-level rules.
- Fixed SVG module stroke width control so users can no longer set negative stroke widths.
- Fixed the Layers View cursor freezing when dragging contact form fields (and other child modules) between modules after an invalid or blocked drop.
- Fixed false save confirmation when using Layers More Options on a global element that had already been saved.
- Fixed Theme Builder header sticky sections not sticking on scroll in the Visual Builder when editing a page.
- Fixed Timeline item date, title, and body text not appearing on the live page when the Timeline card background image parallax effect was enabled.
- Fixed an issue where Number Counter modules could switch to a default value on mobile tap when responsive hover values were not set.
- Fixed a Button module hover-spacing regression where disabled icons could still reserve icon-like horizontal space when only one custom padding was set.
- Fixed list item indent for ordered and unordered lists in Divi 5 on posts where theme sidebar styles overrode module padding.
- Object Position responsive editing now shows the full focus-point UI and preview image on every supported responsive row in the Visual Builder, including custom wide breakpoints, and preview/spinner interactions switch the active breakpoint consistently.
- Fixed Video module responsive overlay images not appearing on the frontend when the desktop overlay image was empty, including object-shaped responsive thumbnail payloads. Hardened server-side image source normalization to prevent Visual Builder loading failures from malformed/object-shaped image src values.
- Fixed blank Layers panel labels for loop-enabled child modules when List Text (or equivalent title field) uses a loop dynamic content field such as Loop Post Title.
- Fixed an issue where shortcode-backed URL fields in Divi 5 could render malformed links by standardizing URL normalization before sanitization across affected rendering paths.
- Fixed invalid empty width and height CSS on the frontend after manually clearing sizing fields in the builder instead of using reset or the unit picker.
- Fixed Sidebar Body Text design settings so paragraph text inside widgets now updates consistently in both Visual Builder and frontend output.
- Fixed DeepHive companion PR handling so same-issue/same-branch dependency ordering feedback is treated as non-blocking without weakening true blocking review outcomes.
- Fixed Toggle module grid column layout in the Visual Builder when changing layout while the toggle content is already open.
- Fixed Social Follow network custom attributes so rel and other link attributes apply to the icon and follow button links instead of only the list item wrapper.
- Fixed migrated background gradients rendering with incorrect length units by preserving and inferring gradient units.
- Fixed migrated Text module heading font style conversion so empty heading styles keep inherited text casing instead of forcing reset casing.
- Fixed interaction Target Module list not updating when new modules are added on an existing page until save or reload.
- Fixed Search module Button Text font-weight not applying when Text Color was set to Light.
- Fixed Divi 5 Image module alignment so migrated custom spacing margins are preserved while SVG alignment behavior remains intact.
- Theme Customizer Body Font Weight now defaults to Regular and keeps the Customizer, frontend, and Visual Builder aligned when no custom weight is saved.
- Updated Divi 5 extension-module documentation with dedicated tutorials for enabling and customizing Layout and HTML settings groups.
- Fixed the Theme Builder “Load From Library” modal staying in light mode and showing hard-to-read tabs when the builder is set to Dark Mode.
- Fixed console errors on the Theme Options and Divi Library admin pages when using WordPress 6.9 or later.

version 5.7.0 ( updated 06-05-2026 )
- Added gradient variables.
- Added a new gradient field component and a gradient picker panel.
- Add new gradient and image text fill options to font groups.
- Added a new "convert to variable" option to the field right-click menus.
- Fixed gradient stop colors not being detected in the inspector.
- Fixed image replacement in the inspector, replacing the image URL with an invalid object instead of the URL string.
- Inherited variables are now shown with reduced opacity in the settings panel to make their inheritance clear.
- Fixed inherited values in the responsive editor showing up as hard values instead of placeholder values in the field components.
- Imported legacy Text modules now preserve the expected Open Sans body weight during import so frontend rendering matches freshly created Text modules.
- Fixed HTML in dynamic content Before and After fields not rendering in the Link module on the Visual Builder and front end.
- Fixed SVG Code being cleared when reloading the Visual Builder for Global SVG modules.
- Fixed Icon List Item Body Text color not applying to hyperlinks inside list item text (including Loop Post Terms with taxonomy links).
- Fixed off-canvas content being replaced with main canvas content when clicking the main canvas star in the Canvases dropdown while editing another canvas.
- Fixed Loop Builder Order By options missing after reloading a Theme Builder template when Query Type was set to Posts For Current Page.
- Fixed Testimonial portrait stacking in Divi 5 flex layouts by extending narrow-column detection to flex column classes on desktop and tablet.
- Fixed Video module aspect ratio targeting so portrait YouTube embeds use the same sizing selector chain as existing video height constraints.
- Fixed accordion content scrolling underneath sticky sections on the front end by including builder sticky element height in the accordion auto-scroll offset, matching anchor link scroll behavior.
- Improved module-creation workflow guardrails so generated modules more reliably match approved implementation contracts.
- Saved layouts no longer keep a desktop centering offset on tablet and phone when a module switches back to relative positioning at smaller breakpoints.
- Fixed preset-based button hover padding regressions in CTA and related module paths where hover could incorrectly fall back to default hard-coded padding.
- Added Module Elements documentation (Introduction, Render, Script Data, Style) under Module explanations, with full API parameter references, paired VB/FE usage examples, updated Module category sidebar order, and improved formatting conventions.
- Prevented hide-on-load interactions from flashing on initial page load.
- Fixed an issue where closing preset editing could close Preset Manager instead of returning users to it when editing was initiated from Preset Manager.
- Fixed an issue where local Column padding in the Visual Builder did not apply when a module preset also defined padding, because preset padding was incorrectly marked as important.
- Fixed a critical error on the front end when layouts stored object position as separate horizontal and vertical values instead of a single CSS value.
- Fixed Blurb module title hover text not updating on the frontend when a Title Link URL is set.
- Fixed an issue where Theme Builder pages could occasionally generate incomplete critical/deferred CSS after partial cache invalidation, causing missing frontend styles.
- Link module Design → Layout now applies to nested modules because their output sits in the same .et_pb_link_inner flex container as the Link’s icon and text in both the frontend and Visual Builder.
- Link grid layout now keeps the text row full-width so nested Icons can occupy the grid columns together instead of splitting across rows.
- The Link inner wrapper now renders as a div so nested block-level module roots remain valid and do not get hoisted out of the Link subtree in the Visual Builder.
- Link now suppresses nested Icon anchors under divi/link, resets default nested child-module bottom spacing inside .et_pb_link_inner, and ships an earlier FE flex baseline for .et_pb_link_inner through the existing Link static CSS path to avoid the observed load jump.
- Updated the example extension modules so Layout, HTML, and Elements match core Divi 5 patterns in VB, extended the same behavior to Child Module with a documented inner layout pattern, aligned Parent with Accordion-style child rules, and fixed front-end render callbacks so Elements children and module styles output correctly.

version 5.6.2 ( updated 05-29-2026 )
- Fixed third-party modules being unable to open settings panels.
- Fixed premade layout library appearing empty when opening the load layout modal from the page creation flow.
- Fixed Responsive Editor not showing preset values on the desktop row when opening the responsive editor from module level.
- Fixed the missing browser backup restore prompt in the Divi 5 Visual Builder after a tab crash or reload when unsaved edits existed in the previous session.

version 5.6.1 ( updated 05-28-2026 )
- Removed the legacy D4 frontend builder runtime while keeping required legacy build outputs intact.
- Lockfile regenerations across the repo and related submodules are intentional and tied to removing Node 14-era dependencies and aligning the toolchain with Node 18/20 + Corepack/Yarn 4.7.0. These updates are required to keep installs/builds deterministic after the Node 14 removal.
- Image modules using Grow to Fill with Cover now stretch to the full row height in Safari without changing the shared VB/frontend contract.
- Fixed Visual Builder incorrectly reporting a failed save for some layouts where special characters and HTML-related module fields caused save verification to disagree with the real Divi save pipeline.
- Image module border-radius clipping now works for complex radius values such as clamp(...), so rounded images clip correctly without custom CSS.
- Fixed an issue where the Visual Builder could fully reload when using a Link module with a Dropdown module set to open on click, which could discard unsaved changes.
- Fixed built-in icon picker showing incorrect icons when selecting icons in the Visual Builder on RTL sites.
- Fixed an issue where the Icon module's background color stretched across the full column width instead of centering around the icon in flex layouts.
- Fixed modules disappearing on the Visual Builder canvas when decoration animation repeat was set to loop, especially after hovering once the first animation cycle had finished.
- Fixed frontend PHP fatal on some pages when image URL fields in saved content were not valid strings, so the page can load instead of crashing (invalid image data may no longer display until content is corrected).
- Fixed Visual Builder saves (and related REST actions) failing after long idle when WordPress and Divi REST nonces went stale, by refreshing those nonces and retrying the request once, and by allowing fresh nonces to merge during after-app-load.
- Introduced divi_remove_empty_array_attributes_pre_filter WordPress filter in ModuleUtils::remove_empty_array_attributes(), allowing third-party modules to preserve intentional empty array field values that would otherwise be removed during save-time security sanitization.
- Fixed loop pages incorrectly inheriting CSS from Divi-built posts when auto-generated loop excerpts rendered those posts’ layouts in the background.
- Fixed an issue where clicking the settings icon on a Link module in the Visual Builder could load the linked page inside the builder instead of opening module settings.
- Fixed an issue where the Filter by Date field in the Visual Builder media library was misaligned after updating to WordPress 7.0.
- Fixed AI Agent inserting blank modules and failing to edit unset attributes — the agent now adds modules with the requested content populated and can change any attribute on any module on first try.
- Fixed Fullwidth Image background video not playing after migrating from Divi 4 when the module had a video background.
- Fixed default heading font not applying in Theme Builder Visual Builder when heading text font is set to Default.
- Fixed an issue where the Sizing option group incorrectly appeared as modified on newly added Columns in the Visual Builder.
- Fixed Loop Builder Order and Order By not applying when using Posts for Current Page on archive templates.
- Fixed global preset save failing with a validation error when module presets included stacked group preset metadata from the builder.
- Fixed Blurb title overlapping an animated image on the front end so published pages match the Visual Builder when composable title styling overlaps the image.
- Fixed Post Slider background overlay tint not applying in the Visual Builder when Dark text color was set on phone only while desktop or tablet remained Light.
- Fixed unit synchronization in Transform Scale fields when switching from math functions (e.g., calc()) to regular numeric units with sync enabled, ensuring both X and Y axes maintain matching units. Also improved CSS numeric field validation to prevent invalid CSS values when transitioning between value types.
- Fixed Theme Builder layout titles in the Visual Builder showing as "Theme Builder Layout" until Theme Builder was saved.
- Image module Object Position now transitions smoothly when the Visual Builder settings modal switches between Desktop and Hover.
- The Visual Builder canvas and Object Position settings preview now show the correct hover image asset when the Image module uses a different hover-state image source.
- Fixed background videos set to display only on hover showing and playing correctly on the frontend and in the Visual Builder.
- Fixed a browser crash that could occur when using Find & Replace on very large layouts, especially when replacing one variable with another across many modules.
- Fixed missing Layouts option on Tools → Export in Divi 5 by ensuring the library layout post type registers on the WordPress export screen.
- Fixed a Visual Builder parity issue where Single Post Content Area Background Color did not render in the builder.
- Fixes D5 Visual Builder failing to load on WooCommerce product pages when the iframe had #et-fb-app-body-root but no outer #et-fb-app mount node.
- Fixed the Table of Contents to ignore hidden headings and resync after responsive breakpoint changes.
- Fixed Role Editor Module Use restrictions in the Divi 5 Visual Builder: aligned permission key resolution across Insert Module and add middleware, hid empty module folders when all children are disabled, and blocked adds for modules disabled for the current role (including Group when divi/group is off).
- Fixed an issue where entering line-height values without a unit could incorrectly switch the unit picker to unitless instead of keeping the selected/default unit.
- Fixed mobile Theme Customizer body text size being overridden by desktop body font size in Divi 5.

version 5.6.0 ( updated 05-22-2026 )
- Added Table of Contents module.
- Added Instagram Feed module.
- Fixed an issue where decimal values (e.g. 0.6x) entered in the Section Divider Horizontal Repeat field were being clamped to 1x.
- Fixed off-canvas and WooCommerce Shop page-visit tracking so related display conditions now evaluate correctly across canvases and Shop-targeted rules.
- Fixed an issue where locked modules could still be duplicated or deleted by roles without Lock Item permission.
- Fixed animations not replaying when re-entering Preview Mode in the Visual Builder.
- Woo Product Add To Cart button icons now render configured custom icons consistently in Visual Builder and frontend output, including Font Awesome icons, icon colors, hover/placement settings, disabled-icon output, and normal-page output.
- Fixed Icon module Icon Link so the entire module area is clickable and shows a pointer cursor when a link is set, instead of only the icon glyph.
- Fixed the testimonial portrait upload control sometimes missing preview and removal for the module’s default portrait image.
- Fixed Visual Builder failing to load and Video overlay images in some cases.
- Line-height fields in the Visual Builder keep the unitless (—) unit selection after selecting another module and returning to the same element.
- Breadcrumbs module: Design → Breadcrumb links styling no longer applies to the Home crumb; Home appearance continues to follow Home Link settings.
- Fixed Countdown Timer layout breaking in narrow columns when the day value shows four or more digits (for example 1000+ days remaining).
- Fixed Woo Product Stock showing no placeholder text in the Visual Builder when editing Theme Builder product templates with the current product selected.
- Fixed responsive style generation for custom breakpoints so breakpoints below the base device now use the correct max-width media queries while preserving visibility behavior.
- Menu module Menu Text background color, gradient, and image now apply correctly to top-level navigation links, and the related Menu Text spacing holds on the reported with-logo layout.
- The Visual Builder breakpoint pixel input now shows the resolved app frame width for the active device view, including correct updates when switching breakpoints, instead of a stale stored window width value.
- Woo Notice module applies a default white button background so View cart and similar notice actions stay visible on the notice bar without opening Design to set a fill.
- Fixed sticky options incorrectly appearing usable in the builder when a parent or ancestor used absolute or fixed positioning with center placement, which can break sticky behavior on the front end.
- Fixed sticky positioning options being available when parent has absolute or fixed position with center placement (which generates percentage-based positioning like top: 50%). This combination is architecturally incompatible with sticky positioning. The sticky options are now disabled with an explanatory tooltip when the module or its parent has this specific positioning configuration.
- Menu module: Setting Logo Max Height under Design → Logo → Sizing now keeps the logo’s aspect ratio instead of stretching it.
- Fixed Accordion Item sticky border behavior in Visual Builder preview and frontend sticky state when the parent Accordion is sticky.
- Fixed the Background Gradient settings preview incorrectly showing the background image on responsive breakpoints in the Visual Builder.
- Fixed Image module alignment on flex layouts by applying flex cross-axis alignment in Visual Builder and on the frontend: responsive preview drift with max height (#49739), and alignment when position is absolute or fixed (#49199).
- Fixed an issue where Divi Cloud module items could appear in row library flow and be inserted into a section structure without a row.
- Fixed an issue where changing the Text Color on tablet or phone could shift Post Slider content alignment instead of leaving it unchanged.
- Fixed button icon hover color not applying when only the hover color was set for modules using button icons.
- Resolved an issue where Grid Auto Columns and Grid Auto Rows only accepted a single numeric size instead of full CSS track values like multiple fractional and fixed tracks.
- Fixed global number and font variables not rendering on the frontend, which caused broken layout spacing and missing styles on pages using those variables.
- Fixed Divi AI image generation panel closing when clicking outside the panel, which caused generated images to disappear from the session until regenerated.
- Fixed a Dynamic Content settings modal issue where custom-field settings could appear broken while options were still loading on slower datasets.
- Fixed Accordion module click interactions not working correctly in Visual Builder when multiple accordion items had interactions configured.
- Fixed Visual Builder column responsive padding by correcting empty-column detection so columns with child modules are no longer treated as empty.
- Fixed Layers View going empty when clicking modules on a global off-canvas while editing in the Theme Builder.
- Fixed an issue where legacy D4 preset conversion could run repeatedly and clear cache even when no new presets were added.

version 5.5.2 ( updated 05-16-2026 )
- Fixed incorrect comment count and comment link in the Post Title module’s meta when Show Author was disabled on Theme Builder templates.
- Fixed duplicate success messages when the same contact form module appeared more than once on a page after submit (for example in a global off-canvas area rendered twice).
- Fixed Load From Library bulk import so unsupported files are skipped with clear singular/plural warnings while supported JSON files remain selected for import.
- Fixed background videos being loaded on devices where they were removed, preventing unnecessary bandwidth usage and improving page load performance.
- Fixed title-style content in multiple modules (including Heading, CTA, Blurb, Accordion, Slider, and others) so valid HTML displays correctly in the Visual Builder canvas, matching the frontend.
- Fixed responsive animation direction in the Visual Builder when animation style stayed on desktop-only settings across breakpoints.
- Fixed an issue where Image module alignment controls did not work when the module position was set to absolute.
- Fixed Divi 5 migration leaving Backwards Compatibility Mode active when Ultimate Membership Pro (ihc_*) or Divi Booster Menu (db_separators) attributes caused shortcode-module fallback instead of native conversion.
- Added the Timeline parent and Timeline Item child modules with aligned FE/VB rendering, split behavior/content ownership, and snapshot-backed coverage for both module surfaces.
- Fixed a Chrome section-boundary seam by ensuring linear gradients without image.
- Display all authors using ajax on condition setting for authors.
- Fixed Author display condition in the Visual Builder only listing the first ten eligible users; additional authors now load while scrolling the author list.
- Fixed Blog module post titles so supported inline HTML formatting tags render correctly instead of appearing escaped.
- Fixed an issue where pasting Link module attributes into Text could break the Text editor by normalizing incompatible content.innerContent values during paste.
- Fixed the Import Design Presets dialog so the notice and checkbox appear when importing layouts with presets from Divi Cloud inside Add From Library.
- Fixed shortcodes returning wrong post ID in Loop Builder by ensuring WordPress global post context is set to the loop item before shortcode execution.
- Woo Notice buttons now render configured icons with correct placement, styling, spacing, and stable hover height.
- Empty/header-only Accordion items now keep their toggle icon hidden after opening other Accordion items.
- Fixed button size changes in the Divi UI related to WordPress admin styling changes.
- Fixed Button preset styles on custom post types by resolving preset selectors through the CPT-aware selector path so Theme Customizer button styles no longer override preset colors.
- Fixed duplicate Open Sans loading in Divi 5 by preventing overlap between default theme typography output and cached builder Google Fonts output.
- Contact Form, Contact Field, Email Opt-in, Email Opt-in custom field: Checkbox/radioDesign → Input TextFields Font styling (underline, strike-through, line color, line style, Capitalize) applies to option label text, not only the custom icon.
- Contact Form, Contact Field, Email Opt-in, Email Opt-in custom field: Fields Text Alignment in Input Text visibly affects checkbox and radio option label textalignment in Visual Builder and on the frontend for the et_pb_contact_field_options_list option-row markup these modules emit.
- Fixed the Group Carousel module showing a 1px sliver of the next slide at certain viewport sizes.
- Added a stop button to the AI Agent chat that allows users to cancel an in-progress response during streaming, planning, or tool execution.
- Fixed an issue where Video module height constraints did not properly apply to embedded videos, causing following content to overlap in some layouts.
- Added metadata-driven confirmation gating for destructive AI agent actions, enabling tools to declare risk levels and custom approval messaging that triggers automatic human-in-the-loop interrupts before execution.
- Fixed an issue where entering a YouTube video URL in the Video module could fail to render due to an upload field runtime error.
- Added new Color Scale variable generator.
- Added new Color Harmony variable generator.
- Added missing quaternary color to the tetradic color harmony.
- Fixed broken JavaScript package heading links in the Customizing Module tutorial so they point to valid API reference pages.
- Fixed Visual Builder lag and instability on very large layouts.
- Fixed inconsistent Page Manager search permissions for dynamic post types by aligning capability checks across route gating and query restrictions.
- Fixed Woo Cart Totals Change Address label styles not applying from the Fields > Label design controls.
- Fixed a Login module issue where logged-in status content could disappear when Body Text was empty, and ensured the Log out action remains visible and clearly identifiable as a link.
- Fixed an issue where copied Design > Button values from other modules could silently affect Button module rendering, while preserving right-click reset/paste availability for composite Slider groups.
- Fixed an issue where pasting background gradient stops could fail to display the pasted gradient until was manually enabled.
- Fixed an issue where global color variables with special characters in their titles could trigger an editor error when selected in color settings.
- Fixed an issue where Link module dropdowns could render with 0 offset on the frontend when the default offset value should be applied.
- Fixed an issue where the Link module icon could disappear on frontend when responsive text or phone-only icon settings were used.
- Fixed Divi 5 Loop Builder meta queries so filters using a meta value of 0 (numeric equals) apply correctly instead of being ignored.
- Fixed an issue where off-canvas content read from the dynamic assets canvas cache could show corrupted select option text (for example “Quebec” displaying as a letter plus a box glyph) by normalizing mistaken private-use \u escapes when loading cached canvas data.
- Fixed conditional display for page-based rules so sections targeted to a specific page no longer evaluate as a match on archive URLs such as product category pages, while keeping “page is not” behavior correct on those same archives.
- Fixed an issue where Button module hover transition timing ignored configured transition settings and always used default timing.
- Fixed an issue where a logo or image could appear broken on desktop on the first load when the image was only set for tablet or phone.
- Fixed an issue in Divi 5 where nested modules inside a Tab failed to appear on the front-end when the Tab's body content was left blank.
- Fixed an issue where the Upload Font modal in Global Variables could open behind an active font dropdown, preventing immediate interaction with modal inputs.
- Fixed Loop Post Title dynamic content so HTML in the post title renders on the frontend the same way it does in the Visual Builder and matches other title dynamic content.
- Fixed the Blog module so et_pb_posts is no longer duplicated across nested wrappers, while preserving existing layout behavior.
- Fixed the WordPress [embed] shortcode not displaying embedded media on the Divi 5 frontend for modules that render HTML content while continuing to respect the corrected shortcode and paragraph formatting behavior from earlier updates.
- Fixed Testimonial and Audio image sizing so aspect ratio now applies with the correct automatic height behavior when no custom height is set.
- Added missing height auto declaration for the menu logo, which caused it to get squished when assigning a fixed height.
- Fixed Group Carousel slide selection being reset to the first slide when viewport is resized.
- Fixed the Visual Builder select dropdown checkmark appearing misaligned next to long, wrapping option labels so it no longer looks like the wrong option is selected.
- Documented that Divi 4 to Divi 5 conversion outlines must pair custom ButtonGroupContainer attrName values with advanced.button so the Show … Icon toggle migrates correctly.
- Fixed Woo Product Gallery responsive grid columns so default tablet and phone layouts, enabled wide breakpoints, and resets used the expected column counts.
- Updated Divi 5 developer documentation to clarify how to add custom module classes in Visual Builder and Frontend, including third-party shortcode-module targeting guidance.

version 5.5.1 ( updated 05-11-2026 )
- Fixed section and row options/settings bars could disappear after deleting the previous element.
- Restored WooCommerce Product Purchase, Cart Contents, and Product Stock display conditions in Divi 5 when WooCommerce is active, including frontend evaluation compatibility with Divi 4 layouts.
- Fixed inline rich-text editing in the Visual Builder when a third-party Divi 5 module plugin is active by ensuring the canonical TinyMCE script loads before the module bundle.
- Added a stop button to the AI Agent chat that allows users to cancel an in-progress response during streaming, planning, or tool execution.
- Fixed an issue where nested right-click submenus in Theme Builder could appear behind overlays and become inaccessible on lower module menus.
- Fixed Hero and other fullwidth modules not appearing in the Visual Builder when inserting from the Divi Library.
- Fixed a Contact Form issue where the basic captcha input could clip entered numbers when the field text size was increased.
- Added browser-side AI agent checkpoint persistence via a store-backed custom saver, including adapter wiring, thread-scoped checkpoint queries, and automated verification coverage.
- Background Image horizontal and vertical offset fields no longer list center, top, bottom, left, or right in their unit picker. Use Background Image Position when you want those presets, so offsets stay length-based and you avoid incompatible combinations between the two controls.
- Fixed disabled modules disappearing from the Visual Builder wireframe when “show disabled modules at 50% opacity” was turned off.
- Fixed Fullwidth Header default content width in Divi 5 so modules without an explicit width now honor the intended 100% default instead of falling back to the legacy 800px max-width.
- Fixed mixed-language Theme Builder assignment option labels when Disable Translations is enabled.
- Fixed Blog module pagination showing an extra page when Post Offset and pagination were used together, including matching page totals in the Visual Builder.
- Fixed Dynamic Module Custom CSS not applying in the Visual Builder or on the front end by wiring cssFields, customCssFields metadata, and PHP CssStyle output to match the Static Module pattern.
- Fixed group preset attributes not resolving correctly when editing a composite group, such as the image module's sizing group, which resulted in unsaved changes when editing aspect ratio attributes.
- Fixed changes not showing up in the interface when editing the font group preset on a text module, due to the text module's nested text group, which was mistakenly used as the actively editing preset ID.

version 5.5.0 ( updated 05-08-2026 )
- Fixed slider-family module conversion fixtures so generated module-library attrs data stays in sync with conversion expectations.
- Fixed Contact Form Contact Button custom CSS hover styles so they trigger only on button hover instead of form container hover.
- Fixed the Divi Library "Layout Type" dropdown alignment in the Add New Layout modal for WordPress 7.0 compatibility.
- Fixed an issue where deleted global colors were not restored when re-importing variables from the same export file.
- Saturation filters now clamp at grayscale when set to minimum.
- Fixed the Visual Builder left toolbar so all actions stay reachable on short desktop viewports.
- Fixed Theme Customizer preview so global Row Height only affects block layout rows, matching the front end and Divi 5 flex/grid layouts.
- Fixed Contact Form submit button sizing so Design → Button → Sizing width and alignment behave correctly in the bottom row, including beside the optional math captcha.
- Fixed release CI so type checking is gated and executed for relevant JS/TS changes.
- Fixed an issue where the Show Theme Builder Layouts option appeared in Builder Settings for users who were not allowed to load Theme Builder layouts, so the setting had no effect.
- Fixed Menu and Fullwidth Menu WooCommerce cart quantity responding to responsive Show Cart Quantity on the front end so it matches the Visual Builder.
- Fixed layout import progress bar fluctuating during multi-file imports by ensuring progress only moves forward.
- Theme Customizer Heading Text Color now applies its default #666666 value to Builder 5 front-end headings.
- Fixed pasted inline title text duplicating after blur.
- Fixed builder-enabled CPT single frontend parity by removing legacy container/sidebar/meta-wrapper output.
- Fixed a PHP 8 fatal error in Divi when certain plugins left the template global in an unexpected shape during admin post list screens.
- Improved AI post management tools by reusing existing page tools with a postType option, including support for custom post types.
- Fixed an issue where AI Agent chat history was lost when dragging the chatbot panel between docked and floating positions.
- Added and hardened the SVG module workflow so editors can render and style sanitized inline SVG from code or uploaded source with consistent VB/FE behavior.
- Fixed Constant Contact email provider authentication by migrating to API v3 with OAuth 2.0 support. Added automatic token refresh to prevent authentication failures when tokens expire. Fixed critical bug preventing JSON response decoding for email providers and spam protection. Improved error message display for subscription failures. Added error handling for OAuth authentication failures in Divi 5. Enabled management of email accounts with no lists.
- Fixed Person module after D4 to D5 migration so image and text stay side-by-side and the image column no longer forced full width in flex layout.
- Fixed the wrong color being set as the default heading color in the Theme Customizer.
- Fixed example extension webpack watch mode repeatedly recompiling because conversion-outline.json was rewritten on every build even when its content did not change.
- Fixed D4 to D5 conversion so free-form custom CSS on the example D4 module migrates into Divi 5 like core modules.
- Fixed Icon List Item text so spaces around inline HTML tags display correctly on the front end, and allowed HTML in the list item text element metadata for consistent Visual Builder handling.
- Fixed an issue where product dynamic content options could be missing in the Visual Builder due to incorrect post context during after-app-load settings data resolution.
- Fixed a Divi 5 portability issue where imported Lottie modules could keep source-site JSON URLs; same-site JSON assets are now transferred and rewritten during import.
- Fixed Column “Apply Structure Template” so Flex structure templates appear when the column uses Flex layout, not only Grid templates.
- Fixed a VB and front-end color mismatch for heading, body, and link text colors by emitting CSS global variable rules in the customizer CSS output for Divi 5.
- Added task documentation for the Divi 5 global text color parity fix tracked under issue #49186.
- Woo Checkout Billing and Shipping Select2-backed fields now apply Fields hover text color consistently with standard checkout fields.
- Fixed module links with multiple query parameters so URLs with & no longer broke redirects on the frontend.
- Fixed a CSS numeric typing regression that caused TypeScript check failures when parsed numeric values reached string-only consumers.
- Added new aspect-ratio settings to the sizing group for all modules.
- Added new framing settings to all modules with images, including object fit and position.
- Implemented image group presets and updated all modules with images to support the new preset type.
- Harmonized the settings available in the image group for all modules.
- Enabled composible settings for image option groups.
- Fixed image animations not working for the post carousel module when enabled via composable settings.

version 5.4.1 ( updated 05-05-2026 )
- Added AI Agent canvas tools in Divi 5 so the assistant can discover, create, switch, configure, and manage canvases through natural-language workflows.
- Added AI Agent tools for creating, updating, trashing, and searching pages, plus tools to publish, unpublish, or schedule page status—enabling page lifecycle operations outside the Visual Builder.
- Fixed an issue where Contact Form Basic Captcha errors could show a message without the expected red error border on the captcha input.
- Fixed duplicate module groups appearing in the interaction target selector when using Theme Builder layouts.
- Fixed global instances in Wireframe default view so nested modules under a global layout render in the wireframe tree on first load instead of only a single Global Layout row.
- Fixed global layouts not expanding in Wireframe view on first Visual Builder load when Wireframe was the default view mode.
- Fixed Visual Builder failing to load when divi/global-layout blocks contained pathologically nested localAttrs from repeated save/port round-trips (#46915).
- Fixed Image module borders so rounded corners no longer show gaps on small images.
- Fixed Sendinblue (Brevo) Email Optin custom field values not saving when the field name’s casing differed from the value sent from the form.
- Fixed duplicate frontend CSS rules when Theme Builder layouts were used, so unified static CSS no longer repeated the same module styles for the main content.
- Fixed inconsistent Theme Builder control heights on WordPress 7 by no longer loading core forms.css on the Theme Builder admin screen.
- Fixed Portfolio module in the Visual Builder so grid row classes (first_in_row, last_in_row, and on_last_row) match the frontend, including when the module is the last content module in a column. Also fixed CI performance test failures by using requestIdleCallback to defer grid calculations until the browser is idle.
- Fixed a Slider true parallax transition issue where background images could jump or render inconsistently during slide changes.
- Woo Checkout Billing and Shipping select-backed fields now respect configured default, focused, and open Fields text colors in Visual Builder and frontend rendering.
- Fixed an issue where background images set via image global variables in presets did not render on the Front End.
- Fixed border inheritance so side-specific border styles defined are no longer overridden by newly set all border widths.
- Fixed the Website Gutter Width Theme Customizer setting not auto-applying to existing pages.
- Fixed the Blurb module’s preset Icon Font Size not applying to the icon in the Visual Builder.
- Fixed an issue where module settings panel height could change unexpectedly after switching between modules and reopening the same module settings.

version 5.4.0 ( updated 04-30-2026 )
- Added missing AI Agent module and context tools in Divi 5 Visual Builder, including preset stack operations, module attribute removal, layout reset, and hierarchy/lock/global state inspection support.
- Added clone, lock, and unlock module tools to the Divi 5 AI-agent module toolset with integration test coverage.
- Added the Breadcrumbs module so sites can show a styled, accessible breadcrumb trail with Visual Builder preview parity and native WordPress hierarchy support.
- Woo Related Products Included Categories -> All Categories uses all product categories instead of only current-product categories.
- Woo Related Products Included Categories -> Current Category no longer leaks cross-category products through tag-only related matching.
- Woo Cart Totals Change Address fields now apply configured focus styling consistently, and disabling Use Focus Borders reliably removes focus-border overrides across inputs and Select2 controls.
- Woo Cart Totals Fields Border settings now apply to Country/Region and County dropdown controls in the Change Address form.
- Fixed an issue where sticky sections in Theme Builder footers were offset from the viewport bottom by the Theme Builder header height.
- Fixed Divi AI free-tier limit messaging on Quick Sites Generate Your Site With AI so users see the server explanation on site resume instead of only a generic error.
- Fixed nested module markup removed on frontend when Accordion item content is cleared at responsive breakpoint.
- Fixed Post Slider and Fullwidth Post Slider background image blend/gradient composition so it applies per slide in frontend and Visual Builder, including responsive breakpoint overrides and dynamic background preview handling.
- Fixed Image module transition style integration by clarifying Image sizing style ownership and adding regression coverage for Image sizing selector/property routing.
- Fixed library layouts losing categories and tags when saving with names that already existed in layout categories or tags (including when moving items from Divi Cloud back to the local library).
- Fixed empty Category and Tag columns in Load From Library modal immediately after moving items from Divi Cloud to local library.
- Fixed taxonomy loss when moving library items from Divi Cloud back to local library.
- Added chat history UI to the AI Agent modal with conversation switching, rename, delete, pin, and time-based grouping.
- Fixed automatic slider animation ignoring the configured delay after using arrow navigation or other manual controls.
- Fixed an issue where Color Picker fields in third-party modules became locked at smaller breakpoints and Hover states after a Global Color variable was applied at a larger breakpoint.
- Improved wireframe view performance in large layouts.
- Woo Checkout Billing and Shipping Country/Region and County select field text now applies the configured Fields font weight consistently.
- Added LangChain tools in the Divi AI Agent package for reading and managing module and option group presets, enabling the AI Agent to list, create, edit, clone, and delete presets through the global data store.
- Fixed Custom Element Presets not inheriting default Option Group Preset styles on the front end when a new module preset is created without changes.
- Fixed Group Carousel dot navigation so responsive enabled states are inherited correctly on frontend when desktop dots are disabled.
- Fixed a Visual Builder crash that occurred when converted slider content included hover-only text-shadow state data without a desktop base value.
- Fixed an issue where rejecting AI Agent destructive approval could re-prompt or later fail with a 400 tool-output error when retrying in the same chat thread.
- Fixed an issue where Blurb and similar modules could stop swapping hover image attributes on the frontend when multiple multi-view attribute updates targeted the same element.
- Fixed Visual Builder heading font weight defaults to follow Theme Customizer header font weight.
- Added a new variable generator, making it simple to spin up an entire fluid sizing system and relative color system.
- Improved performance of editing variables in the variable manager, reducing rerenders on the canvas.
- Reduced unused CSS variable output on the front end.
- Improved performance of dragging and resizing modals.
- Fixed empty transparency placeholder value in the color picker component when the relative color relationship was more than one level deep.
- Added search to variable select menu.
- Re-ordered variables alphabetically in the variable select menu.
- Fixed theme builder canvases being duplicated when editing a page in the builder that had theme builder templates assigned.
- Fixed incorrect canvas labels in grid view.
- Fixed lower breakpoints on the frontend incorrectly inheriting desktop background styling when parallax was enabled and Tablet Wide background options were cleared, so responsive background behavior now matches the Visual Builder.
- Fixed an issue where the Command Center was showing incorrect items.
- Fixed Command center showing incorrect item.
- Fixed cursor jumping when editing large CSS files in Theme Options custom CSS.
- Fixed Person module text alignment in column layouts when Body content is empty by ensuring the description stretches to full width while preserving custom CSS positioning compatibility.
- Fixed Theme Customizer body line-height and font-size settings not applying to the Text and Signup modules on the frontend and in the Visual Builder.
- Fixed Woo Cart Totals not updating after applying a coupon on Theme Builder cart layouts.
- Fixed column padding for phone and tablet not applying correctly in the Visual Builder when desktop padding was set on an empty column.
- Fixed spacing padding and margin keyboard tab navigation so focus now reaches each unit picker instead of skipping to the next value field.
- Fixed Icon List item text so inline HTML renders in the Visual Builder to match the front end.
- Fixed Custom CSS in Theme Options being truncated when containing comparison operators like <= or >= in CSS comments.
- Fixed CSS with comparison operators (<=, >=) in Custom CSS being truncated when saving in Theme Options.
- Fixed Preset Manager not scrolling to the previously opened preset group when returning from Preset Preview via the back button.
- Updated the Divi 5 Help modal with a Knowledge Base tab linking to curated documentation.
- Removed help icons from all Divi 5 modals and updated the sidebar help button to open a new help modal containing quick access to Divi 5 documentation articles.
- Fixed canvas title changes not unless the canvas content was also modified.
- Fixed the main canvas appearing empty when editing a theme builder template, specifically when switching directly to a new canvas, then using grid view to return to the main canvas.

version 5.3.3 ( updated 04-23-2026 )
- Fixed an issue where changing column background images from the Inspector in Divi 5 could fail to update correctly.
- Fixed extending Design sizing so section Section Alignment updates when the source module stored alignment under the flex sizing control instead of the block alignment field.
- Fixed the Text module (and other richtext fields) TinyMCE fullscreen toolbar being hidden behind the WordPress admin bar in the Divi 5 builder.
- Fixed manual blog excerpts breaking HTML when truncated by length.
- Fixed backwards compatibility so legacy Call to Action modules no longer show the default promo background when the background was removed or disabled in Divi 4.
- Fixed Social Media Follow custom icon size not applying when using CSS math functions, variables, or global keywords in the icon size field.

version 5.3.2 ( updated 04-22-2026 )
- Fixed frontend rendering to honor preset values stored outside render-only buckets.
- Fixed an issue where Save to Divi Cloud could repeatedly prompt for login after refresh.
- Fixed deleted modules still appearing in the Interaction Target module list in Theme Builder until garbage collection ran.
- Fixed Map Pin labels in the Map module Elements list to reflect custom titles or admin labels.
- Fixed a PHP 8+ fatal when comment pagination was enabled with an invalid “comments per page” value of zero, including when loading the builder.
- Improved Divi 5 CI reliability by making PHPUnit, Jest, and E2E performance tests more consistent and easier to diagnose.
- Updated the Dynamic Assets tutorial to document selective third-party module asset loading based on module presence.
- Added Modal Field Showcase example to the D5 Extension Example Modals plugin with tabs, search, field-library samples, custom tri-toggle, and per-post meta save, plus README and build updates for all examples.
- Fixed an issue where migrating D4 posts containing leading whitespace resulted in an empty D5 layout in the Visual Builder.
- Fixed a migration issue where mixed shortcode and HTML/text content in text modules could be truncated during Divi 4 to Divi 5 conversion.

version 5.3.1 ( updated 04-21-2026 )
- Fixed an issue where migrated global sections could fail to render on the front end when duplicate placeholder wrappers were present in converted content.
- Fixed an issue where global library sections containing image modules would get double-wrapped during D4 to D5 migration, causing them to not render on the frontend.
- Fixed Page Custom CSS removing percent-encoded characters in SVG data URLs after save in the Visual Builder.
- Fixed AI Agent UI tool descriptions and removed preview tools that could hide the chat panel.
- Fixed auth modal behavior so invalid credentials no longer show a stale error after retry.
- Fixed keyboard selection in searchable dropdowns so that pressing Enter after filtering (for example in the font picker) selects the highlighted option instead of a different one.
- Fixed an issue where the gradient background overlay would hide the background image on mobile when Option Group Presets with phone-specific gradient stops were applied. Both frontend and Visual Builder now correctly show the image and gradient together.
- Fixed migrated Menu and Fullwidth Menu dropdown backgrounds so they inherit the module background color when no explicit dropdown background color is set.
- Fixed linked SVG sizing in Divi 5 migration when custom widths were incorrectly nested, while preserving flex-container visibility.
- Fixed nested module entrance animations not replaying when reopening Dropdown panels on the frontend.
- Fixed nested module entrance animations inside the Dropdown module on the frontend, including when reopening the panel, with Visual Builder preview guarded to avoid nested-hover flicker.
- Fixed PHP notices when submitting a Divi 5 contact form with an optional checkbox left unchecked.
- Fixed Portfolio module pagination on static homepages and improved previous/next pagination links so they stay correct for the module’s query across page contexts.
- Fixed an issue where responsive preset spacing edits could create stale values that overrode newer settings, by aligning save behavior and safely cleaning stale values when affected fields are edited.
- Fixed Divi Layout block content being lost after reloading the block editor on WordPress 7.0 when opening Visual Builder from the layout.
- Fixed the Layout Block losing saved content in the editor after a page reload.
- Fixed Divi Layout block losing its saved layout in the block editor on WordPress 7.0 after reloading the edit screen.
- Fixed preset button padding being overridden by hard-coded values on hover in WooCommerce Cart modules by implementing complete attrsFilter and affectingAttrs pattern from Button module fix.
- Fixed background image custom size not respecting hover transitions because background-size was missing from the transition property list.
- Fixed incorrect Post Navigation URLs on WordPress sites installed in a subdirectory.
- Fixed Contact Form submit row appearing left-aligned when saved content had button options but no iterable sizing decoration, by merging a default sizing shell before the bottom-container alignment style runs.
- Fixed the Contact Form module’s submit button defaulting to left alignment by restoring a right-aligned default on the sizing alignment used by the module’s custom submit-area styles.
- Fixed an issue where interaction target module values were lost after saving pages that contained modules with custom HTML attributes or HTML before/after fields.
- Fixed the Blog module dropping one post on category pages when using Current Category in a Theme Builder layout, by no longer treating the main-query archive post as the article to exclude on non-singular views.
- Fixed Visual Builder styling for loop-enabled Group Carousel slides so custom slide styles now render correctly in Builder.
- Fixed Number Counter hover updates so custom suffix values (such as +) remain visible during animation.
- Fixed Blog automatic excerpts to exclude noisy text from selected non-content modules during excerpt generation.
- Updated developer documentation for custom Admin Label text fields to explain enabling grey placeholder text with defaultAttr and showPlaceholderOnEmpty.
- Fixed an issue where Blog module "Show Content" on archive pages displayed unstyled post content after editing a post, because Divi's CSS cache for archive pages was not invalidated when individual post content changed.
- Fixed nested option-group preset editing so parent preset overrides now apply as hard values while nested preset defaults continue to appear as placeholders in the settings panel.

version 5.3.0 ( updated 04-20-2026 )
- Harmonized field option across all form-based modules.
- Added new field customization options to all form-based modules.
- Added new checkbox and radio field groups to form-based modules for customizing these input types.
- Added preset support for input, checkbox, and radio groups.
- Added new focus, checked, and active pseudo-class editing modes.
- Deprecated legacy focus-related form settings and migrated them to the new pseudo-class state.
- Added Contact Form 7 Styler module.
- Enabled preset support for subgroups, which, in tandem with composable settings, allows you to use presets to customize any module sub-element.
- Extended nested preset system to support group presets within group presets.
- Fixed the inability to reset attributes when in preset editing mode and right-clicking on a nested group.
- Improved module rendering time by optimizing sticky and locked module checks.
- Fixed custom field input text alignment not overriding the parent field alignment set in the email opt-in module.
- Added a blue dot at the option group and field level to signify when attributes are modified.
- Fixed reset attributes not working for certain nested groups, such as the Icon group.
- Fixed gradient color stops not changing when assigning new color variables if the background group was a nested subgroup.
- Improved visual builder loading speeds by deferring several assets, lazy-loading, and hydrating script data not needed at boot time.
- Added divi.editPost.store.content.update hook that fires when modules are edited, added, removed, or content is imported in the Visual Builder, enabling third-party plugins to react to content changes before save.
- Added developer tutorial documentation for adding custom buttons to the Divi 5 save dropdown menu.
- Added documentation explaining how to access Divi 5 app color scheme values and how this differs from accent and global color APIs.
- Fixed duplicate review_form_wrapper id in the Woo Product Reviews module so custom CSS and styling targeting that element apply once as intended.
- Fixed Icon Font Size and other number global variables not updating on the Visual Builder canvas until modules were hovered.
- Fixed an issue where saving the builder with Preset Preview open could persist preview-only modules and show ghost content on the frontend.
- Fixed the Woo Cart Totals module Body Text Alignment setting not applying to Tax and Discount rows.
- Fixed field background color and text color hover preview not updating in the Visual Builder for Contact Form and Contact Field modules.
- Fixed the Background Gradient settings showing a Toggle Gradient control that did not match the gradient preview by hiding that control while keeping gradient enable state driven by the gradient field for compatibility.
- Fixed a fatal error when Critical CSS measured specialty sections that included row-inner layouts.
- Fixed an issue where switching between global colors in the new color picker would show the previous color's opacity instead of the newly selected one.
- Fixed missing Theme Customizer styles on Loop Builder paginated pages (loop-* > 1).
- Fixed Form Notice Text Color not being applied to linked error messages in the Woo Checkout Billing module on the frontend.
- Fixed Pagination’s Target Loop incorrectly switching to Main Query after copying a section that included a loop and Pagination to another page (or duplicating the subtree).
- Fixed Blurb Module text overflow issue when using left or right icon placement with long unbreakable strings like email addresses, while ensuring normal text remains readable without mid-word breaks.
- Fixed Blurb Module text overflow issue when using left or right icon placement with long unbreakable strings like email addresses.
- Fixed Contact Form Module Field ID input to properly sanitize special characters that were breaking form submissions.

version 5.2.1 ( updated 04-09-2026 )
- Fixed Global Variable placeholder chips displaying in the wrong color.
- Fixed Page Creation Flow not appearing when using Classic Editor.
- Unified builder 5 migration/version checks with ET shared prerelease-aware version comparison.
- Updated builder warning version comparison to use ET prerelease-aware shared comparator.
- Fixed ET prerelease version ordering for updates/rollback and fixed helper availability in mixed core loader paths.
- Fixed blank preview when toggling Wireframe View on layouts with off-canvas popups and interactions.
- Fixed Number Counter hover state not displaying hover values on the frontend, and disabled sticky state support for the number value field to match Divi 4 behavior.
- Fixed an issue where buttons with icon disabled could show extra hover spacing when only top or bottom padding was set.
- Fixed an issue where special characters in global text variables were being removed or converted to HTML entities after saving and reopening the Visual Builder.
- Fixed a canvas switching crash by sanitizing circular portal references before runtime loading and hardening content traversal against malformed recursive structures.
- Fixed Visual Builder text rendering that could insert an incorrect line break before literal square-bracketed text.
- Fixed transparent primary menu top padding applying to a Hero module when the Hero was not the first row’s lead module, so section padding now targets the correct element in that layout.
- Fixed WP Optimize’s full page cache not always clearing after Divi static CSS was cleared, which could leave logged-out visitors with broken styles until cache expired.
- Fixed the AI Agent New chat (+) button so its hover label uses the Visual Builder tooltip component instead of the browser default.
- Fixed Role Editor portability so exporting or importing role settings no longer includes or overwrites WordPress Additional CSS (global Custom CSS).
- Fixed an issue where the Custom CSS code editor only showed one class of lint problem at a time for module element CSS, so syntax issues and invalid property names can appear together when applicable.
- Fixed an issue where the Date & Time condition popup could hide the Apply button on smaller screen heights.
- Fixed unnecessary delay when clearing WP Compress cache after Divi updates by using the plugin’s newer purge API on supported versions.
- Fixed speculative “Edit With Divi” prerendering so it only runs for posts that already have Divi enabled.
- Fixed Theme Options Custom CSS not loading on paginated Loop Builder pages.
- Fixed an issue where extending Image module sizing styles to or from other modules did not apply the selected sizing values.
- Fixed duplicated post title and meta appearing in Blog Module excerpts when Post Title module is used on the post.
- Fixed the double-click issue when loading the Visual Builder from new auto-draft posts in Classic Editor mode.
- Fixed the Link module’s text alignment so it applies correctly in the builder and on the frontend.
- Fixed preset styles being reset when creating a new preset from current styles while using a default preset.
- Fixed incorrect button size on hover in Visual Builder when using presets with explicit padding and disabled icons.
- Fixed global elements not syncing on every page when Theme Builder templates were assigned.
- Added Human-in-the-Loop approval flow for destructive AI Agent actions and multi-turn conversation memory using LangGraph StateGraph architecture.
- Fixed inconsistent paragraph spacing in the Tabs module between the Divi Builder and the live frontend.
- Fixed hover border color and nested field reset on layouts where responsive state containers were stored as empty arrays instead of objects, which could drop saved hover values and trigger console errors when clearing nested attributes.
- Fixed "Save Roles" button appearing oversized in WordPress 7.0.
- Fixed "Use Divi Builder" button appearing oversized in WordPress 7.0.
- Harmonized the primary buttons appearing oversized in WordPress 7.0.
- Fixed an issue where Text module content wrapped in angle brackets could be treated as HTML and removed from visible output in Visual Builder and the front end.
- Fixed Divi AI “Build with AI” not applying the generated layout when editing a Theme Builder custom header (and similar layout-only areas), by matching canvas content scope to the active template area and ensuring AI prompt listeners stay registered at the app root.
- Fixed global Theme Builder header and footer appearing when editing Divi Library items in the Visual Builder.

version 5.2.0 ( updated 04-01-2026 )
- Fixed a fatal error that occurred when a third-party module with a non-string content value was saved and rendered as a Global Module.
- Fixed an issue where the Responsive Editor displayed incorrect default values for Section and Row gap field.
- Fixed Contact Form basic math captcha missing an associated label, which triggered accessibility warnings for the captcha field on the front end and in the Visual Builder.
- Fixed the Visual Builder color picker not responding when using an ACF Color Picker field as dynamic content (including in Theme Builder), after a recent global color opacity improvement.
- Added AI Agent UI tools for preview mode and light/dark mode controls, including tested toggle parity and idempotent state-setting behavior.
- Fixed entity-encoded page titles appearing in Portability and Page Settings title fields.
- Fixed a compatibility issue that could cause fatal errors when third-party plugins passed nullable values through WordPress translation hooks.
- Fixed an issue where global module visibility changes could not be saved because the Save button remained disabled.
- Fixed color fields rejecting non-global CSS variables when entering custom colors.
- Fixed an issue where Layers could show empty or incorrect content while editing non-main off-canvas canvases in Theme Builder contexts.
- Added a New chat control and conversation title toolbar to the Divi AI Agent modal so users can start a fresh chat while keeping the modal open, including when the modal is pinned.
- Fixed docked sidebar modal tabs overflowing the sidebar when many modals were open in one row; the tab strip now scrolls horizontally within the sidebar instead of overlapping the canvas.
- Fixed button icon not displayed on hover when a custom icon was selected and the icon position was set to right.
- Fixed an issue where button animation settings could be incorrectly applied to unrelated nested elements (such as contact form labels/icons) during interaction-triggered animation replay.
- Fixed speculative “Edit With Divi” prerendering so it only runs for posts that already have Divi enabled.
- Enabled custom attributes for the cart quantity element in the menu module.
- Enabled custom attributes for the captcha element in the contact for module.
- Fixed missing CSS selector for composable settings output for the captcha and cart quantity elements.
- Fixed duplicate composable settings group options in several Woo module button groups.
- Fixed missing composables settings CSS selectors for various style-only module elements that resulted in composable setting CSS not targeting the desired module element.
- Fixed broken CSS on pages with loops if a paginated page was visited prior to the main loop page.

version 5.1.1 ( updated 03-30-2026 )
- Fixed Divi 4 -> Divi 5 selective-sync conversion for global modules by restoring migrator post-context and correctly mapping wildcard style paths to localAttrsMap (attrName + subName), preserving unsynced fields after migration.
- Fixed an issue where custom CSS containing inline comments in Module Elements fields was removed during migration from Divi 4 to Divi 5.
- Fixed an issue where Conditional Display based on Custom Field values would not work correctly on Category and Archive pages.
- Fixed header and footer layouts appearing blank in Wireframe view when editing in the Theme Builder.
- Fixed an issue where setting module global color opacity to 100% could still render transparent when the source variable opacity was 0.
- Fixed Slide module Content Alignment control not working when custom Content Width is set.
- Fixed global elements confirmation modal to properly prevent all outside interactions when unsaved changes exist, eliminating multiple popups and console errors.
- Fixed Lottie module preset interactions not updating animation speed and playback settings on the frontend.
- Fixed Image (and other module that has similar quirk as Image Module) Sizing and Spacing option groups not being correctly copied or extended due to attrsMaps cache collisions.
- Fixed SVG hover/sticky paint transitions for 3PS modules.
- Fixed an issue where the Preset Manager settings modal would immediately close after clicking "Add New Preset" for the Heading Text option group, and ensured the correct preview module (Text with h1-h6 content) and settings group (FontHeaderGroup with h1-h6 tabs) are displayed.
- Fixed button icons not appearing on the frontend for WooCommerce Checkout Payment module when using non-default icons.
- Fixed an issue where responsive editor indicators did not appear at static module level when responsive values came from applied module or option group presets.
- Fixed block-layout columns inside flex rows rendering as flex containers, which caused incorrect module spacing.
- Fixed a Blurb issue where custom attributes targeted to Image or Icon were not applied when the module was using an icon.
- Fixed element attributes not loading on the frontend when Loop Builder returns no results, ensuring CSS classes, IDs, and custom attributes are preserved to match Visual Builder preview.
- Fixed a security issue in Divi 5 Contact Form redirects by blocking unsafe redirect URLs while preserving valid redirects.
- Security Updated Fixed a stored XSS vulnerability that made it possible for users with Contributor role or above to insert JavaScript code onto the page via the Video Slider module's shortcode.
- Added AI-agent Context, Module, and UI tool sets to Divi 5 with Builder-contract-compatible behavior and integration tests.
- Prevented unsafe remote requests when resolving video thumbnail URLs to mitigate SSRF risk.
- Fixed border styles expanding to full column width on small Image modules in Divi 5 flex layouts. Borders now wrap tightly around the image regardless of image size.
- Fixed an issue where featured images displayed the same image on all paginated pages in Theme Builder layouts on taxonomy archive pages. This was a regression from issue #47541 that occurred when the original fix was reverted during a merge.
- Fixed Divi 4 to Divi 5 migration regressions for library-backed tab spacing assets and free-form custom CSS conversion.
- Fixed a Visual Builder parity issue where Divider alignment inside flex columns could hide the divider.
- Fixed ACF taxonomy archive background images so Dynamic Content custom fields now resolve correctly for Image URL, Image ID, and Image Array return formats.
- Fixed double slashes in es6-promise script URLs that were causing issues with 3rd party asset offloading plugins.
- Fixed background gradients with global colors using opacity filters not rendering on the frontend when parallax background images were enabled. The fix resolves CSS sanitization issues with nested gradient functions and prevents invalid CSS syntax generation.
- Fixed Image module drag-and-drop functionality so it can be dragged from its center area when the settings panel is open, consistent with other Divi modules.
- Customer-friendly, past-tense one-liner describing the fix.
- Fixed a Visual Builder issue where typed settings could be applied to the next clicked element when switching modules before pending field commits completed.
- Fixed Group Carousel rotation could stop working after sections hidden on load were revealed via Visibility or Interaction settings.
- Fixed Woo Checkout Payment button styling in Visual Builder so toggling the button icon no longer changes button text color or border appearance.
- Fixed sticky elements not working correctly in Safari when section dividers are enabled by moving the Safari-specific perspective CSS from the section container to the divider elements themselves.
- Fixed a logic bug in internal helpers that determine whether a string starts or ends with a given substring, which could return the wrong result.
- Fixed a security issue where legacy Dynamic Content JSON could keep raw HTML enabled for users without unfiltered_html.
- Fixed responsive icons not displaying correctly when set to different icons per breakpoint in Group Carousel modules.
- Fixed Email Optin forms connected to AWeber not showing an error when an already subscribed email is submitted again.
- Fixed Contact Form "Letters Only" validation to correctly support international characters and multi-byte UTF-8 names.
- Fixed Global Variables Manager modal crashing with "Maximum call stack size exceeded" when Heading and Body text colors reference each other.
- Fixed Pagination preset link text color precedence so primary accent fallback no longer overrides preset/global variable link colors.
- Fixed Woo module product selector so This Loop Product appears correctly in Theme Builder current-page loop contexts for Woo archives.
- Fixed Blog module pagination Font Weight, Text Size, and Text Alignment not applying when WP-PageNavi plugin is active.
- Fixed PHP 8.5 deprecation warnings when saving in Visual Builder and rendering the frontend.
- Fixed Group Carousel autoplay timing so configured transition cadence applies consistently across all slide transitions, including high transition-speed setups.
- Fixed Free-Form Custom CSS in the Visual Builder not showing an error when a closing brace was missing at the end of the stylesheet.
- Fixed a Divi AI authentication flow issue where missing credentials could trigger invalid-credentials behavior and block inline recovery in the Visual Builder.
- Fixed the issue where opening Module Elements tab would automatically jump to CSS fields that had content.
- Fixed an issue where newer standard HTML attributes including fetchpriority, popover, popovertarget, elementtiming, command, and commandfor were incorrectly rejected as invalid in the Custom Attributes panel.

version 5.1.0 ( updated 03-13-2026 )
- Fixed failed save in the builder if the user did not have permission to use the Theme Builder.
- Fixed Related Products disappearing in Theme Builder layouts when default category settings were saved in a legacy meta format, and aligned default column counts on TB product templates with sidebars.
- Fixed an issue where Before/After modules could block page scrolling on mobile while preserving intentional touch slider interaction.
- Fixed legacy (shortcode) modules being wrapped in paragraph tags when updating a page through the Classic Editor, which caused the modules to crash when reopening the page in the Visual Builder.
- Fixed Post/Archive Title dynamic content showing a post title instead of the archive term name when editing archive pages in the Visual Builder on subdirectory WordPress installations.
- Fixed fatal error when Installing Divi 4 after installing Divi 5.
- Fixed Image module border radius rendering for small images in flex layouts so all corners display correctly.
- Added centralized OpenAI model creation utility with shared type definitions for improved AI agent configuration and type safety.
- Added AI Agent icon to the Divi 5 Builder Toolbar, gated behind the AI Agent experiment feature flag.
- Fixed Email Optin field layout so disabling Fullwidth settings correctly restores non-fullwidth field flow while preserving module layout mode compatibility.
- Fixed an issue where inherited element preset conditions could not be fully removed inside option-group condition presets.
- Fixed Number Counter animation restarting when Post Slider changes slides. The counter now animates only once on initial viewport entry and updates silently on subsequent slider changes.
- Fixed unit picker dropdown items not being navigable using keyboard arrow keys. Users can now navigate unit options with arrow keys, select options with Enter, and close the popup with Escape.

version 5.0.3 ( updated 03-11-2026 )
- Fixed elements from the main canvas not appearing in the interaction target select menu.
- Updated the interaction editor to allow targeting of elements in assigned theme builder layout areas. 
- Updated documentation to explain how to enable Layout controls for custom modules.
- Added documentation for enabling Advanced HTML settings in custom modules.
- Fixed Text Module heading font defaults to display calculated values based on Theme Customizer Heading Font Size instead of hardcoded defaults.
- Added the initial Divi AI Agent package scaffold and supporting Visual Builder metadata for future AI Agent development.
- Updated Divi types publishing to use direct @divi/* types-only packages with selective release automation and aligned documentation.
- Fixed an issue where Icon List Body Text presets did not apply by aligning the module's preset group with its underlying typography schema.
- Fixed an issue where dragging Transform Scale handles would corrupt math function values (e.g., calc(100% - 20px)) and CSS variable values by resetting them to the default number. Drag handles are now disabled for axes containing non-numeric values.
- Fixed Audio Module duration time being cropped when body font size and line height are increased in the customizer.
- Fixed Divi 4 to Divi 5 migration regressions for DiviFlash modules by hardening third-party shortcode callback resolution and preventing popup index collisions that caused missing output and broken styles.
- Fixed Link module mobile spacing so nested dropdowns no longer force a bottom margin.
- Fixed an issue where Button Module text would break into two lines when the button was absolutely positioned with center origin in narrow columns. The button wrapper now maintains full width when absolutely positioned, preventing text wrapping.
- Fixed missing main-canvas interaction targets in Theme Builder layouts.
- Fixed Email Optin module button icon position changing after migration from Divi 4 to Divi 5 due to missing CSS selector specificity prefix.
- Fixed loop modules not updating when post featured images are changed or removed.
- Fixed Video Slider thumbnails disappearing when placed inside interaction popups with "Hide on Load" enabled.
- Fixed CSS variable unit picker not working correctly in Text module font-size field, causing broken placeholders and values not applying on frontend.
- Fixed a Visual Builder loading issue on Blank Page templates by preventing sidebar fallback detection from overriding explicit no-sidebar layouts.
- Fixed TinyMCE plugin loading errors on admin pages when ACF Pro or other plugins are active by restricting Divi's TinyMCE runtime to post editor screens only.
- Added Link Color from Theme Customizer as a default global color option in the Visual Builder, allowing users to use the Theme Customizer's Link Color setting as a global color variable in modules.
- Fixed Canvas Portal content on Main Canvas so modules hidden via Visibility correctly display the disabled visual cue in Visual Builder.
- Fixed duplicated canvases to stop inheriting copied interaction targets, preventing interaction target drift after duplication.
- Fixed Woo Checkout Information Module title not hiding when "Show Title" option is disabled on the frontend.
- Fixed an issue where the Visual Builder interface was broken when the Popup Maker plugin was active.
- Fixed Link module hover transitions when color and transform were both set.
- Fixed nested Dropdown/Link content inside a Button could render an extra ghost item on frontend.

version 5.0.2 ( updated 03-09-2026 )
- Added editable theme builder areas in the builder.
- Improved performance of opening settings panel.
- Improved performance of module editing. 
- Improved performance of responsive view mode switching.
- Fixed some issues related to preset importing and default preset assignment when generating websites using the Divi Quick Sites system prior to Divi 5 conversion.
- Fixed Global Colors CSS variable inputs being preserved while allowing label-based CSS vars (including spaces) to resolve.
- Fixed array-to-string conversion warning when using responsive animation intensity settings with transform properties.
- Fixed Slider preset overlay behavior by restoring preset inheritance flow, correcting child overlay default resolution in settings, and resolving overlay visibility from effective preset state (including text overlay border radius support).
- Fixed Custom CSS being altered during portability import for users without unfiltered_html.
- Fixed PHP notice about unregistered script dependency (wc-settings) when WooCommerce is active in WordPress 6.9.1+.
- Fixed incorrect app-frame positioning in narrow viewports when opening a narrower docked modal after closing a wider one.
- Fixed Bar Counter module animation not playing in Visual Builder. The bars now animate from 0% to their target width when modules are rendered, matching the frontend behavior.
- Fixed inconsistent Preset Preview back-button behavior when creating new presets after Visual Builder reload.
- Fixed an issue where "Save To Divi Cloud" and "Save As Global" options could be enabled simultaneously in the Add to Library modal.
- Fixed an issue where pages containing global modules could incorrectly show the unsaved changes warning when exiting without making edits.
- Fixed global number variables in Row Element Preset and Layout Option Group Preset Horizontal Gap options not resolving correctly on the frontend.
- Fixed layout breakage in Visual Builder when using sticky positioning on columns inside looped rows by ensuring each loop iteration has unique selectors and sticky registration IDs.
- Fixed a Tabs front-end preset mapping issue where default Option Group background presets could override active and inactive tab background colors.
- Fixed grid layout breaking when parallax background is enabled with missing featured image source.
- Fixed right-click context menu appearing unexpectedly after exiting preview mode by disabling right-click interactions during preview mode.
- Fixed an issue where exporting after session expiration could render login content in the Visual Builder.
- Fixed "Copy Support Token" link appearing in wrong position when Remote Access toggle is enabled in Support Center.
- Fixed animation preview not restarting after rapid setting changes in Visual Builder.
- Fixed websafe fonts (Arial, Trebuchet, Georgia, Times New Roman, Verdana) generating invalid Google Fonts API requests that returned 400 errors when used in Global Font Variables and presets.
- Fixed Woo Products module not filtering by brand when "Use Current Loop" option is enabled on brand archive pages in Theme Builder templates.
- Fixed an issue where responsive value indicators did not appear while editing module and option group presets in the Visual Builder.
- Fixed Image module srcset attribute not updating correctly for small size images.

version 5.0.1 ( updated 02-26-2026 )
- Finalized beta phase removal and bumped version for PHP version compare.

version 5.0.0 ( updated 02-26-2026 )
- Fixed global number variables not applying to VB button font size.
- Fixed a Preset Manager group-context mismatch that could prevent renaming Heading Text options-group presets.
- Fixed an issue where third-party modules failed to render correctly during Divi Library and Visual Builder Portability imports.
- Fixed loop featured images staying in wrong positions when posts are reordered by changing publish dates.
- Fixed an issue where third-party D4 modules rendered in D5 backward compatibility mode displayed reduced bottom spacing due to the last-of-type CSS rule incorrectly removing paragraph padding when only one paragraph existed.
- Fixed featured pricing table vertical alignment to match non-featured tables in D5 after migration from D4.
- Fixed Post Slider and Fullwidth Post Slider arrows and controls ignoring the Elements visibility settings on the frontend.
- Fixed an issue where inline text editor style changes (bold, italic, color, etc.) were not saved when clicking the save button without first clicking outside the editor.
- Fixed Font Awesome icons not rendering on the frontend when used in the Link module.
- Fixed an issue where importing a layout with multiple canvases into a new off-canvas page resulted in an empty canvas instead of the imported content.
- Fixed global font variables in presets not rendering correctly on the frontend due to CSS variable being quoted as a literal string.
- Fixed Transform Scale dragging after unit switching by handling empty transitional values safely.
- Fixed excessive preset merge cloning that caused long tasks during module editing.
- Fixed history label showing incorrect module name when pasting modules, now correctly displays the copied module type instead of the target module type.
- Fixed header positioning in Visual Builder responsive preview mode when Global Footer is present, preventing header from overlapping page content.
- Fixed a fatal PHP error that occurred when third-party plugins processed requests through virtual page endpoints on Divi-built pages.
- Fixed row settings in VB incorrectly added white background colors to columns in regular sections.
- Fixed custom masks and patterns from third-party filters disappearing from the Visual Builder canvas after page reload.
- Fixed video playback continuing in the background after closing off-canvas popups containing video modules.
- Fixed SVG logo sizing in Menu module appearing smaller than Divi 4 after migration when Logo Width and Logo Max Height were set.
- Fixed Woo Products module displaying 3 columns instead of 4 on the front-end when using default column layout in Theme Builder templates.
- Fixed migration of D4 Blog fullwidth layout so images and spacing match Divi 4 after importing layouts (e.g., Divi Pixel Bistro).
- Fixed Text Module paragraphs displaying incorrect font weight when body font weight is customized in Theme Customizer.
- Fixed Heading Module padding-bottom discrepancy between Divi 4 and Divi 5 by removing incorrect CSS reset that was overriding global heading styles, restoring the expected 10px padding-bottom spacing.
- Fixed Person Module margin-bottom spacing to match Divi 4 behavior (12px instead of 20px).
- Fixed Post Slider module margin-bottom being overridden by gutter rules in D5, restoring D4 spacing behavior where custom margin values properly override default column gutters.
- Fixed Post Slider Module height discrepancy between D4 and D5 by correcting class assignment logic and ensuring default printed style attributes are not stored during module conversion.
- Fixed Number Counter Module title padding to match Divi 4 behavior, restoring the 10px padding-bottom spacing that was incorrectly removed during D5 migration.
- Fixed Email Optin module form elements appearing top-aligned instead of vertically centered for horizontal layouts after D4 to D5 conversion.
- Fixed incorrect button icon spacing when customizer icon display is disabled but module-level icon is enabled.
- Fixed Contact Form module Block layout mode form element overflowing its parent container by removing unnecessary negative margin that was a legacy workaround for <p> tag default padding.

version 5.0.0-public-beta.9.4 ( updated 02-25-2026 )
- Updated internal Cursor commands to enforce regression root-cause validation and cleanup.
- Fixed Blurb preset image box-shadow styles leaking into icon mode after migration.
- Added support for third-party plugins to extend loop queries with custom attributes that work seamlessly in both Visual Builder and frontend. Plugins can now hook into divi.module.loop.extractCustomAttributes filter to register custom attributes and divi.loop.query_args filter to process them on the backend.
- Fixed Blog module auto-generated excerpts showing raw icon characters when posts contain Icon, Blurb with icon, or Icon List modules as the first content.
- Added Divi 5 compatibility to the Layout Block, enabling creation of new layouts and loading from the Divi Library. Legacy Divi 4 layout blocks are automatically converted to Divi 5 format when pages are opened in the editor.
- Fixed preset styles and global color variables not rendering for modules inside Canvas Portal modules on both the Visual Builder and the frontend.
- Fixed a fatal PHP error that occurred when the WPML String Translation plugin was active.
- Fixed an issue where workspace preferences stored in cookies could exceed server request header limits, causing "Bad Request" errors.
- Fixed Trebuchet font not displaying correctly when set via global variables by ensuring CSS variables include the proper MS version font stack.
- Fixed parallax effect not working on iOS browsers (Safari, Chrome iOS, Firefox iOS, Edge iOS, etc.) by automatically using JavaScript parallax instead of CSS parallax for iOS WebKit browsers, ensuring parallax works correctly across all iOS browsers regardless of caching plugins.
- Updated the "Clearing CSS Cache Programmatically" tutorial to fix the parameter list, document the $slug parameter and dynamic assets clearing, and add a note on in-memory canvas cache for developers who need to clear CSS cache programmatically in Divi 5.
- Fixed transform styles jumping at the end of entrance animations when both transform and animation are applied to the same element. Animation now smoothly transitions to the final transform state without visible jumps.
- Fixed an issue where box shadow presets would display as 0px after migration by ensuring preset values are correctly expanded using root mapping.
- Fixed an issue where box shadow inherited hover states would break due to empty string values overwriting presets.
- Fixed fatal errors during Quick Site migration by adding defensive type checks in box shadow processing functions.
- Fixed fatal error that occurred when rendering Fullwidth Header modules with scroll down icons after migrating from Divi 4 to Divi 5.
- Fixed image module custom spacing values being overridden by alignment margins after migration from Divi 4 to Divi 5.
- Fixed canvas content clearing when switching between canvases using the selector component while grid view is active.
- Fixed an issue where importing layouts through the Visual Builder Load from Library modal would change the layout's publish date to the current date instead of preserving the original creation date from the export.
- Fixed a conversion issue where imported Hero scroll-down icons using token index 0 were incorrectly dropped.
- Fixed an issue where the Transform group reset option did not reset styles when used on tablet or phone breakpoints.
- Fixed CSS Grid column span not applying when set through Module Presets or Option Group Presets in the Visual Builder.
- Fixed Visual Builder animation style previews in Theme Builder so non-fade styles animate correctly.
- Fixed "Preview on Frontend" keyboard shortcut (Ctrl+Shift+.) not working on Windows and Linux.
- Fixed an issue where the background image disappeared in the Responsive Editor when modifying background image sub-settings (e.g., size, position) on tablet or phone breakpoints.

version 5.0.0-public-beta.9.3 ( updated 02-20-2026 )
- Fixed fatal error from undefined funciton et_core_version_compare() in some cases.

version 5.0.0-public-beta.9.2 ( updated 02-20-2026 )
- Fixed row add button alignment on initial Visual Builder load for empty rows.
- Fixed layout block previews showing dependency notices when D5 package scripts were enqueued.
- Fixed PHP notices in block editor when using Divi Layout Block with WP_DEBUG enabled (WordPress 6.9.1+). The Block Editor path now registers vendor script dependencies before enqueueing Visual Builder packages.
- Fixed Layout Block import/export modal showing unsupported canvas options ("Include All Global Canvases" and "Import To New Canvas").
- Fixed column width field showing 'auto' as default value in Visual Builder. The field now displays empty by default, allowing users to set custom width values when needed.
- Fixed an issue where third-party developers extending Page Settings were required to provide a defaultValue for text and textarea fields, even when their fields intentionally have no default value.
- Fixed Visual Builder HTML Before/After rendering to preserve wrapper order for nested custom HTML.
- Added /check-pattern command for AI-assisted code pattern verification in Divi 5 Visual Builder development.
- Added design pattern documentation for /check-pattern command to help maintain code consistency in Divi 5 Visual Builder.
- Fixed section divider cutoff issue on tablet and mobile when sections contain slider modules.
- Fixed an issue where the settings sidebar could become stuck too wide after resizing a floating settings modal.
- Added support for {{baseSelector}} placeholder in custom CSS field selectors, allowing third-party developers to generate CSS selectors using the base module class without Theme Builder wrapper prefixes.
- Fixed an issue where some legacy module icons were not visible in the Add Module picker.
- Fixed an issue where the Edit with the Divi Builder button text became unreadable on hover in Classic Editor mode.
- Fixed an issue where disabling "Use Custom Styles For Button" in a button module's local state did not remove preset styles that were applied from a group preset.
- Fixed sticky style CSS selectors not working in Theme Builder layouts on CPT pages, regular pages, and archive pages.
- Fixed sticky styles targeting the wrong parent element (e.g., section instead of row/column) when sticky positioning is applied to nested containers.
- Fixed sticky styles failing to apply due to incorrect descendant selectors for same-element classes.
- Fixed Visual Builder sticky styles not rendering for preset-based modules.
- Resolved issue where global color/font variables appeared as unresolved $variable(...) tokens in the final CSS.
- Consolidated dynamic variable resolution to rendering boundaries to improve Visual Builder stability and performance.
- Added support for escaped JSON strings in global variable tokens to ensure correct rendering of Theme Builder content.
- Refined CSS selector generation to correctly handle generic module classes and chained selectors.
- Aligned Visual Builder preset rendering with frontend behavior to ensure sticky CSS is generated upfront.
- Implemented performance-optimized resolution utilities with static caching (PHP) and Map-based memoization (TS) for smoother builder experience.
- Fixed global variable values in presets and non-preset outputs (links, images, numbers, strings) resolving incorrectly or leaving raw tokens.
- Fixed dynamic content links/images in the Visual Builder when values were stored as non-global CSS variables.
- Reduced TS render-path overhead in ModuleElements via per-instance resolved-attrs caching and hook-guarded filter execution when element hooks are absent.
- Reduced TS structural-spacing allocation churn in Module by replacing array materialization scans with reverse child iteration.
- Improved Visual Builder responsiveness on large, complex layouts by reducing repeated render-time work in module output paths.
- Reduced overhead for third-party integrations that rely on module render hooks by avoiding unnecessary hook/filter processing when no callbacks are registered.
- Fixed a false "Unsaved Changes" prompt that could appear when saving and exiting newly created Divi Library layouts.
- Fixed grid layout CSS rules not rendering correctly when off-canvas layouts are displayed via Canvas Portal in the Visual Builder.
- Fixed option group preset styles leaking to sibling targets when not selected.
- Fixed copy-paste of Layout OG global presets not working for modules using composite component in preset mode.
- Fixed toggle visibility interactions so shared targets and builder overlays no longer double-toggle and leave elements hidden.
- Fixed interactions toggle visibility so all intended targets respond reliably, including multi-target and builder interaction flows.
- Fixed WooCommerce Product Gallery title and caption elements disappearing after switching between Grid and Slider layouts in the Visual Builder.
- Fixed signup and sidebar modules displaying unwanted vertical gaps after migrating from Divi 4 to Divi 5 by ensuring converted modules use block layout instead of flex layout.
- Added comprehensive tutorial documenting how to add Elements options group to 3rd party Divi 5 modules, enabling nested child module functionality.
- Fixed incorrect subscription notice appearing for free Divi Cloud accounts when accessing saved modules in Divi 5. The notice was triggered by an inflated item count caused by summing account-wide totals across multiple context requests.
- Fixed Divi Cloud saved modules showing incorrect subscription/space notices in Divi 5 by preventing multi-context fetches from inflating cloud item counts when identical totals are returned across contexts.
- Added task documentation for Divi Cloud saved modules subscription notice fix investigation and resolution process.
- Fixed missing Slider option-group reset and paste actions in Before/After Image when group slug and attribute prefix differ.
- Fixed Loop Builder date formatting error when WordPress date format contains custom characters like escaped text. Dates now display correctly in Visual Builder regardless of WordPress date format setting.
- Fixed incorrect version ordering for ET prerelease labels so updates from public beta builds to stable releases are detected reliably.
- Fixed Tab navigation so focus moves into text editor fields instead of collapsing option groups.
- Fixed readiness reporting so modules inside nonconvertible shortcode modules are not counted as ready to convert.
- Fixed Off-Canvas content flashing briefly on page load when using "On Load" → "Remove Visibility" interactions by hiding target elements with CSS before JavaScript initializes.
- Fixed column custom margins not applying on mobile devices below 480px when row gutter width is set to 1.
- Fixed background mask and pattern transform options and mask aspect ratio not displaying in Visual Builder when applied through option group presets or module presets.
- Fixed default preset background colors not being applied to imported modules when importing layouts with default preset conflicts. Imported modules now automatically reference the remapped preset IDs, ensuring visual styling matches the exported layout without manual intervention.
- Improved localization with higher quality translations for all supported locales.
- Fixed Circle Counter module starting animation on page load when positioned outside the viewport. The counter now waits until it scrolls into view before animating, matching the behavior of Number Counter and Bar Counter modules.
- Updated documentation to explain how custom modules enable loop selector fields.
- Fixed menu title attribute displaying HTML entity codes instead of visible characters in Visual Builder when using Loop Builder with Heading modules.
- Fixed migration prompt incorrectly appearing on already-migrated sites when activating plugins with Divi 4 hooks.
- Fixed PHP notice in block editor admin style dependencies are registered before block editor asset validation occurs.
- Fixed unwanted bottom margin appearing on Slider module slides when parent Row and Column both use Block layout style.
- Prevented Heading Text group preset edits from crashing when changing Heading Level.
- Fixed the CI performance test threshold mismatch for large-layout baseline rendering.
- Fixed Button module gradient background global colors not updating when changed via chip click.
- Fixed Free-Form CSS selector keyword replacement to work with class and ID chaining syntax (e.g., selector.et_pb_toggle_open), restoring Divi 4 compatibility for compound selector patterns.
- Fixed Option Group preset fields showing blank defaults when a module preset was assigned; fields now display the module preset’s values as the default when editing an OG preset.
- Fixed an issue where Group Presets in the module's option group dropdown appeared in a different order than in the Preset Manager.
- Fixed Woo Products current-category filtering on product category archives so module attributes now resolve and query against the correct current category context.
- Fixed Contact Form field labels missing the for attribute, improving accessibility so screen readers and assistive technologies can correctly associate labels with their inputs and clicking a label focuses the associated field.
- Fixed Layout option group preset values not displaying in the module's settings panel for Blog, Gallery, Portfolio, and similar modules.
- Fixed Google Fonts not loading on the frontend after saving in some cases.
- Fixed Group Carousel Automatic Rotation Speed values not saving when layouts contain corrupted breakpoint-level empty array structures.
- Added speculative prerendering to speed up load times when entering, exiting and switching pages in the builder.

version 5.0.0-public-beta.9.1 ( updated 02-15-2026 )
- Fixed variables and CSS functions not working in the builder when applied to font size fields. 
- Improved the command center's element command to allow adding elements to any location regardless of context.
- Improved the command center's element command, allowing elements to injected above/below/into hovered elements.
- Improved the command center's element command, allowing for elements to be injected based on the browser viewport. 

version 5.0.0-public-beta.9 ( updated 02-13-2026 )
- Added new Command Center.
- Fixed broken styles on the first page load when Critical CSS was disabled, which occurred on some hosts during to PHP stats cache.
- Removed old global fonts editor in favor of the new fonts group in the variable manager.
- Added new Move actions to right click and keyboard shortcuts (move up, down, top, and bottom).
- Added new Cut commands to right click and keyboard shortcuts (cut, cut parent, cut children).
- Added new cmd+a shortcut to select all elements within a container.
- Fixed an issue where newly saved library items didn't appear in the library panel until Visual Builder was reloaded.
- Fixed Responsive Editor reset behavior for intentionally empty responsive content values and ensured resets inherit the latest larger-breakpoint value.
- Fixed scroll effects configured in Element Presets or Option Group Presets not being visible in the Element Settings Panel until manually toggled.
- Fixed PHP warning when viewing 404 pages with Theme Builder templates that have disabled header or footer layouts.
- Fixed preset visibility toggles so disabled breakpoints can be unchecked without using reset.
- Fixed responsive column structure cannot be set from Module Options.
- Fixed Module Options' Change Column Structure modal shows all options on non-desktop breakpoints regardless row's layout type.
- Fixed Module Options' Change Column Structure modal shows incorrect confirmation popup when Module Settings is open for any module.
- Fixed Module Options' Change Column Structure modal doesn't properly revert column structure when canceling changes from Module Settings.
- Fixed broken module settings panel when currently edited module settings is child of global section / row + being removed.
- Fixed incorrect confirmation popup that incorrectly appears on currently edited module settings that is child of global section / row when adding new module inside the same global section / row.
- Fixed incorrect confirmation popup that appears on currently edited module which is inside global section / row when module inside other global section / row is removed.
- Fixed keyboard shortcuts in Help modal displaying incorrect modifier key labels on Windows. Meta key shortcuts now correctly show "Ctrl" on Windows while preserving "⌘ cmd" display on macOS.
- Fixed custom D4 library modules not rendering after switching to D5.
- Fixed Divi Carousel Maker column defaults not loading in Divi 5 shortcode compatibility.
- Fixed an issue where global library items could be inserted into a global library template, allowing nested global elements.
- Fixed Social Media Follow module custom CSS not applying in Visual Builder and Frontend by aligning selector implementations across TypeScript and PHP.
- Fixed Blog Module layout migration when Grid layout is set via module preset, ensuring presets with Grid layout correctly migrate to display as grid instead of fullwidth.
- Fixed position options not inheriting correctly on tablet and phone breakpoints after Divi 4 to Divi 5 migration, causing elements to lose their intended positioning below 980px.
- Fixed example module conversion outlines missing from build metadata, which caused D4 modules to load as shortcode modules in D5.
- Fixed background blend mode not working when parallax effect is enabled with background image and color or gradient. The blend mode now correctly applies to the parallax background element in both Visual Builder and frontend, and the background image and blend mode are properly rendered on the wrapper element for mobile device support.
- Fixed docked module settings header clicks causing the panel to vanish when docked to the left sidebar.
- Fixed Contact Form field margin-bottom spacing not applying on the frontend when using flex layout.
- Fixed child module preset style attributes (like background color) not overriding parent preset children attributes when both parent and child modules have presets applied.
- Added comprehensive documentation tutorials for converting Divi 4 presets to Divi 5 and implementing advanced preset features, enabling third-party developers to fully migrate their modules to Divi 5.
- Updated documentation to explain wrapper hook reactivity and a child-module subscription pattern.
- Fixed heading module not being able to use option group presets from other modules' title text option groups.
- Fixed a frontend issue where invalid hash links like ## could trigger jQuery selector errors when modules were clicked.
- Fixed global modules being stripped from the page during D5 Readiness migration.
- Fixed font-size values without units (e.g., "30" instead of "30px") in migrated Divi 4 layouts now render correctly with proper CSS units.
- Fixed empty Elements option group appearing when editing element presets for structural modules (Section, Row, Column, Group). Elements groups used for structural child modules are now properly hidden during preset editing, while Elements groups with fields (Blog, Gallery, etc.) and other groups with fields (Visibility, Position, Scroll Effects) remain visible and functional.
- Updated preset attributes for Elements group fields in WooCommerce modules (Cart Products, Checkout Information, Product Images, Product Meta) from preset: 'content' to preset: ['html'] to ensure proper preset functionality.

version 5.0.0-public-beta.8.3 ( updated 02-11-2026 )
- Added three new Modules: Link, Dropdopwn, and Before/After Image Slider.
- Reduced the Interaction script size by removing lodash dependencies.
- Added new breakpoint interaction triggers.
- Added new selector based interaction targets.
- Added new menu loop query type.
- Added multi-selection support to the divi/select field, including updated typing and UI behavior.
- Fixed the Visual Builder Page Bar title for Theme Builder layouts so it shows the template name and layout type.
- Fixed Hero Module "Make Fullscreen" option not resetting height in Visual Builder preview when disabled.
- Fixed an issue where the MapContainer field component would crash with a TypeError when used in 3rd party extension modules.
- Fixed dark mode preference not persisting on Theme Builder main page after page refresh. The Theme Builder management interface now correctly loads and applies the saved dark mode preference on page load.
- Added internal documentation guide for DeepHive human interaction patterns, covering @mention rules, fix job workflows, and HITL processes.
- Fixed Theme Builder template import removing backslashes from Custom CSS escape sequences.
- Fixed nested modules not being recognized as global when added inside global modules.
- Fixed confirmation popups appearing unnecessarily when adding nested modules from global module settings.
- Added defaultOpen property to module option groups, allowing groups to be open by default when module settings first load while remaining collapsible.
- Fixed an issue where the Social Media Follow module incorrectly applied the clearfix CSS class when using Flex or Grid layouts. The clearfix class is now only applied when using Block layout, eliminating the need for !important statements in custom CSS for Flex and Grid layouts.
- Fixed unit picker dropdowns overflowing the viewport by constraining height and enabling internal scrolling.
- Fixed loop content not displaying on frontend when loop-enabled modules appear after disabled loops or other content on large pages.
- Fixed fatal error when importing Divi Library layouts containing third-party shortcodes (e.g., WooCommerce) by adding defensive handling for non-array shortcode outputs in the import pipeline.
- Fixed loop excerpts including Post Title output when no manual excerpt is set.
- Fixed Social Media Follow module individual icon font size override not working when parent icon size was set.
- Fixed canvas z-index field not being saved when clicking save button before blur validation completes. Added z-index field to canvas settings modal to control canvas stacking order, with proper state management to ensure values are always captured correctly.
- Fixed nested global modules in imported Divi Library layouts not being editable by converting them to their actual module types during import.
- Fixed text shadow not appearing on mobile breakpoint when only color is overridden and tablet breakpoint is missing. Mobile breakpoint now correctly inherits style property from desktop and generates CSS with the intended color.
- Fixed an issue where the Responsive Editor closed when changing heading formats or adding links in the Visual Tab.
- Fixed Group Carousel module links opening twice when Loop option is enabled and link target is set to open in a new tab.
- Fixed option group preset background colors not rendering correctly in Visual Builder for child modules (slides). Option group preset style attributes are now properly included in child module rendering, ensuring preset colors are detected and displayed correctly in VB preview.
- Updated roadmap documentation data with latest GitHub issues information.
- Fixed nested modules inside Blurb module inheriting unwanted text alignment from the Blurb container's alignment settings.
- Fixed Slider and Fullwidth Slider preset background colors not appearing in local module settings.

version 5.0.0-public-beta.8.2 ( updated 02-08-2026 )
- Fixed group preset CSS not printing in the builder when lazy loaded.

version 5.0.0-public-beta.8.1 ( updated 02-06-2026 )
- Overhauled the Divi CSS file system to mark files a stale rather than deleting them, allowing pages cached by performance plugins to reference old CSS files when getting out of sync with Divi.
- Fixed preset CSS order printing too late on the second page load on index pages that used Theme Builder templates, causing styles to break due to different CSS priority.
- Added support for automatic cache clearing for additional cache plugins, including Flyingpress, Nitropack, Super Page Cache, SpeedyCache, WP Compress, Swift Performance, and the Cloudflare WordPress Plugin.
- Fixed Google Fonts becoming dequeued on WooCommerce product category templates after the second page load.
- Fixed Divi module and feature caches not clearing correctly for taxonomy pages when saving an individual Theme Builder layout.
- Fixed the default Divi theme header not shrinking on scroll on non-singular pages.
- Fixed missing flex column classes on group modules when selected via the Design > Sizing options.
- Fixed gallery module missing grid CSS when run in backward compatibility mode.
- Removed unnecessary animation script dependency from circle counter and number counter modules.
- Fixed block blog CSS compiled when legacy blog attributes were detected.
- Fixed issue where dynamic CSS files (critical CSS, deferred CSS) were not regenerating after cache clearing, ensuring stale CSS is properly refreshed when posts are saved or cache is cleared.
- Fixed slider and slide modules losing text alignment after migrating from Divi 4 to Divi 5 when using parent-to-child inheritance for text orientation settings.
- Fixed incorrect submenu dropdown positioning after migration by restoring Divi 4 behavior for nested submenus and properly handling first-level submenu overflow detection.
- Fixed linked SVG images disappearing when link URLs resolve from dynamic content.
- Fixed styles not displaying after page refresh when modules use Condition Options by ensuring modules always register their styles before checking display conditions.
- Fixed spacing between Contact Form option labels and links for checkbox and radio fields.
- Fixed dynamic page links breaking when the linked page slug is changed. Links now store post IDs instead of slugs, ensuring they remain valid even after slug changes.
- Fixed issue where creating a new Option Group preset from module settings did not automatically open the preset editing panel.
- Fixed PHP warnings displayed on frontend when date/time conditions evaluate to false by updating conflict detection to use the correct Divi 5 field name.
- Fixed Theme Customizer fonts not loading on frontend in Divi 5 when using "Source Sans Pro" or other renamed Google Fonts.
- Fixed the Hero Scroll Down icon reset so it no longer resets related fields or shows reset incorrectly.
- Fixed global module instances retaining global status when inserted inside other global modules.
- Updated conversion outline documentation to include the childrenName property requirement for parent-child module conversion, preventing child modules from being lost during Divi 4 to Divi 5 conversion.
- Fixed parallax hover backgrounds so they show on hover and no longer reveal images beneath transparent hover states.
- Fixed Visual Builder crash when Responsive Editor modal was restored from workspace state without required field attributes, now showing "No field is selected" message instead of crashing the application.
- Fixed third-party developers being unable to use custom onChangeCallback callbacks for page settings fields. Custom callbacks now fully replace default behavior (matching module settings pattern), and defaultValue validation now allows empty strings.
- Fixed nested Post Carousel modules not rendering until a resize in accordion, toggle, and slider containers.
- Fixed Code module content field requiring two clicks to activate editing. The editor now activates when hovering over the textarea, allowing immediate typing on the first click.
- Fixed right-click option menus that exceeded the viewport height by making tall lists scrollable and keeping submenus accessible.
- Fixed preset-derived border labels in the Inspector showing object-style paths instead of friendly titles.
- Fixed Theme Builder archive pages losing Loop Builder styles and Google Fonts after repeated refreshes.
- Fixed Heading Text preset font sizes showing computed defaults across heading levels.
- Fixed custom CSS selector suffix handling so commas inside :is() lists no longer split module selectors.
- Fixed PHP deprecation warnings when using WP Smush 3.16.1+ by updating to use the new hook name while maintaining compatibility with older Smush versions.
- Added lazy loading to the initial builder render to improve load times.
- Fixed unwanted bottom spacing appearing on single post article elements in Visual Builder.
- Fixed a fatal error when search results templates used dynamic author content and no results were found.
- Added divi_off_canvas_should_load filter hook to allow third-party plugins to register Off Canvas CPT on their pages.
- Fixed preset dropdown in Interaction Builder not closing after selecting a preset or clicking outside the dropdown.
- Fixed layout jumps occurring when sticky elements activate in Theme Builder headers containing Off Canvas modules. The fix improves precision for all sticky behaviors by ensuring each sticky element only affects its own parent element.
- Fixed Page Manager not updating immediately when page title is changed in Page Settings modal. Title changes now reflect instantly in Page Manager without requiring save or page refresh.
- Fixed conditional logic fields rendering as plain text inputs in D4 shortcode modules, allowing proper rule-based conditional display configuration with field/condition/value selectors and add/remove row functionality.
- Fixed background images loading on tablet and phone even when explicitly removed, with only desktop image set.
- Fixed page settings custom CSS sanitization so modern function values, URLs, and formatting persist after save.
- Fixed nested disabled modules becoming nearly invisible when multiple parent modules were disabled on different devices by applying opacity styling only to the topmost disabled module in each ancestor chain.
- Added hook support for custom condition options in Conditional Display, enabling third-party plugins to register fully functional custom conditions with initialization, settings UI, tooltips, and backend evaluation logic.
- Fixed default preset styling during D4→D5 migration by preserving _initial as default on fresh sites and remapping only when D5 defaults already exist.
- Updated task documentation and Visual Builder translations for issue 47938.
- Fixed Divi Library layout editing so the main header displays while keeping Live Preview hidden.
- Fixed Blurb module image width migration issue where SVG images with top placement were incorrectly centered and full-width instead of left-aligned at custom width. Also fixed aspect ratio distortion for images with percentage widths by using max-width instead of width for percentage values.

version 5.0.0-public-beta.8 ( updated 01-30-2026 )
- Added full guide on the attributes in module.json.
- Fixed Woo Product Rating module star icons displaying incorrectly when Text Option Group Preset with custom font-family is applied.
- Fixed an issue where saving or editing global presets failed with "Save of Global Presets Has Failed" error for sites with large preset collections (200+ presets). The fix implements chunking to split large preset payloads into smaller requests, allowing users with extensive preset libraries to save and edit presets successfully.
- Fixed Loop Builder repeater field queries returning "No Results Found" when repeater data exists on different post types.
- Fixed app window positioning when opening or closing snapped modals (Page Settings, Layers, Inspector) at zoom levels below 100%.
- Fixed missing zoom icon in Woo Product Images module Visual Builder to match Frontend appearance.
- Fixed Visual Builder child-module preset backgrounds not updating correctly or live-previewing changes.
- Fixed Visual Builder Exit dropdown showing translated post type labels when "Disable Translations" option is enabled.
- Fixed infinite recursion causing page load failures (502 Gateway Timeout or PHP fatal errors) when pages contain modules with Interactions that use preset effects.
- Fixed Theme Builder crash when CheckoutWC Pro plugin is active due to null filter return causing PHP Fatal TypeError.
- Fixed the Visual Builder preview showing Theme Builder headers and footers for Editor roles.
- Fixed hover state controls for the Hero scroll-down icon color and size.
- Fixed section divider colors rendering black after migrating layouts from D4.
- Fixed WooCommerce Add To Cart modules in Loop Builder archives targeting the wrong product.
- Fixed issue where checkbox field presets (and other array-based field presets) were not correctly overriding default values when defaults contained all available options. Preset array values now completely replace default arrays instead of being merged by index.
- Fixed grid auto rows are not output when manual row templates are used, so implicit rows respect the configured height.
- Fixed extra spacing above the Contact Form submit row after D4 to D5 migration.
- Updated documentation to clarify how Custom Attributes must be rendered on the frontend for third-party modules.
- Fixed VB column right margin so auto and custom values apply correctly without breaking empty-column padding.
- Fixed dimensionless SVG images disappearing when module alignment (center/left/right) is applied in the Image Module.
- Fixed Group Carousel navigation freezing when clicking the active dot.
- Fixed an issue where regular sections migrated from Divi 4 incorrectly displayed extra column backgrounds, padding, and other column-specific styling.
- Fixed unwanted right margin on the last social media icon in Social Media Follow module when using block layout mode.
- Fixed rows with multiple columns collapsing to a single column on tablet devices, restoring proper multi-column layout that matches Divi 4 behavior.
- Fixed loop results disappearing when invalid post type selections are stored.
- Fixed portability import/export controls appearing in variable and preset managers when a role disables portability.
- Fixed Post Navigation stacking issue after D4 to D5 migration by preserving block layout for migrated modules.
- Fixed button hover padding issue in Visual Builder when editing presets by ensuring preset styles are not merged into module style attributes during preset editing mode.
- Fixed Post Content modules in Visual Builder wrapping following modules when block row/column layouts are used.
- Added documentation for extending Admin Label option groups with custom fields in Divi 5 modules, including both global and module-specific approaches with complete code examples.
- Fixed extending individual border properties (width, color, or style) resetting sibling border properties when using the Extend Attributes feature in Social Media Follow and other modules.
- Fixed Visibility settings persisting incorrectly for converted modules and ensured the preview reflects legacy visibility states.
- Fixed button alignment not working when ButtonGroupContainer uses custom attribute names by correcting CSS selector generation to use element definition selectors instead of appending _wrapper suffix.

version 5.0.0-public-beta.7.4 ( updated 01-27-2026 )
- Fixed font variables being mistakenly wrapped in quotes. Only static fonts should be wrapped in quotes.
- Fixed a bug caused by today's Google Chrome update, which caused hover buttons not to appear after deleting an element.
- Fixed missing styles on the first page load of archive pages that used theme builder templates after saving a global theme builder header.
- Fixed unwanted spacing between blog article elements when in flex layout mode.

version 5.0.0-public-beta.7.3 ( updated 01-27-2026 )
- Fixed horizontal gap option not applying correctly to flexbox row columns at viewport widths greater than 1439px.
- Fixed undo/redo for Visibility Options to work individually for each checkbox change.
- Fixed Blog module masonry layout support and restored column width controls for flex layouts. Images now update correctly when column widths change.
- Fixed issue where tooltips at the top of the screen caused infinite re-rendering and prevented tooltips from displaying properly.
- Fixed Closing the Live Preview modal no longer closes the Load From Library modal, allowing users to preview multiple library items without reopening the library modal.
- Added fieldset as an available HTML element type option for module wrappers, enabling semantic grouping of form fields for improved accessibility.
- Fixed Bar Counter module animations breaking when HTML tag is changed via Semantic Elements feature. Updated CSS selectors to work with any HTML tag while maintaining default <li> behavior.
- Fixed tabs module navigation breaking in Visual Builder after changing HTML tag. Tab navigation now works immediately after HTML tag changes without requiring a Visual Builder reload.
- Fixed tablet viewport canvas resize limit value from incorrectly limited to 860px.
- Fixed issue with Button icon overlapping with text if Button has small padding and "Only Show Icon On Hover for Button" option turned off.
- Fixed issue where slide modules set to block layout were not receiving the proper layout class, causing incorrect spacing for buttons and titles.
- Fixed Image module absolute positioning breaking layouts by removing automatic CSS properties and implementing Divi 4-compatible attribute-based width setting.
- Fixed inability to set looped post titles as custom attributes in Theme Builder layouts.
- Fixed dynamic content in custom attributes not resolving correctly in Loop Builder and Theme Builder loop contexts, ensuring post titles and other dynamic values display properly instead of showing raw variable strings or incorrect archive titles.
- Fixed custom CSS fields not respecting the visible property for conditional visibility in module settings, allowing third-party developers to hide fields while preserving attribute values when copying modules.
- Fixed issue where custom CSS entered in the Blurb Image custom CSS field was not being applied due to CSS specificity conflicts.
- Fixed issue where long admin labels in wireframe view would overlap with action icons, now displaying with ellipsis truncation instead.
- Fixed Slider module first slide image not displaying when section is revealed via interaction.
- Fixed an issue in Loop Builder where searching and selecting specific posts would replace previously selected posts instead of adding to the selection.
- Fixed Global Variables with ch unit values not appearing in the unit picker for fields that support character width units.
- Fixed custom attributes not appearing on Image module links when targetElement is set to 'image'.
- Added a unified Page Menu in the Visual Builder page bar that consolidates page-level actions including Save, Page Settings, Import/Export, and other page management tools into a single, easily accessible menu.
- Fixed issue where custom CSS fields could not use selector prefixes, preventing modules from targeting elements that require prepended selectors.
- Fixed issue where interaction editor modal displayed an unnecessary scrollbar with minimal scrollable content.
- Fixed math functions appearing in unit picker dropdown for icon font size fields in Accordion and Toggle modules. Math functions are now only available via Dynamic Content, preventing incorrect icon positioning when selected directly from the dropdown.
- Fixed Image Alignment option not working when Width or Max-Width settings are modified in the Image Module.
- Fixed issue where background image vertical and horizontal offset settings were not applying correctly across different device breakpoints.
- Fixed incorrect default element type displayed in HTML settings for Button, Counter, Signup Custom Field, Fullwidth Header, and Counters modules. Settings now show the correct default element type matching the rendered output.
- Added a new Page Manager modal for easily navigating between and editing different pages built with Divi.
- Fixed issue where the "Open Recent" menu submenu would remain stuck on "Loading..." and wouldn't update after fetching recent posts. The menu now properly refreshes to show the list of recently edited pages without requiring users to close and reopen the menu.
- Fixed issue where hover padding values were lost when converting Divi 4 layouts to Divi 5 blocks.
- Added Preview Mode feature to Visual Builder, allowing users to preview their page design in a full-screen, distraction-free environment directly within the builder interface. Preview Mode can be activated via the Preview button dropdown menu or keyboard shortcut (Meta + .), and includes a floating Exit Preview button for quick exit.
- Updated checkbox list styling in sortable list fields to match the standard builder checkbox appearance and modernized action icons to use consistent thin variants.
- Updated save button to use dropdown menu with options to save with different post statuses (draft, pending, private, publish) and improved loading indicator visibility.
- Added child elements navigation icon to module settings panel breadcrumbs, allowing users to quickly view and navigate to nested child modules through a hierarchical menu.
- Fixed row width changes after D4 to D5 migration by ensuring custom CSS properly overrides static CSS rules.
- Fixed performance issues when opening the Add Module modal with large numbers of modules by implementing lazy loading and ensuring module search queries all available modules.
- Fixed preset footer being hidden when editing presets on global modules by excluding preset editing mode from the global module footer positioning CSS rule.
- Fixed an issue where straight quotes and apostrophes entered in Visual Builder were displayed as curly quotes on the frontend.
- Fixed Visual Builder crash when opening pages with deactivated third-party modules or during initialization timing issues.
- Fixed checkerboard pattern incorrectly appearing on image preview components in module settings. The checkerboard pattern now only appears in Background Option Groups where it indicates transparency.
- Fixed issue where resetting "Number of Columns" field in Layout OG closes preset edit mode.
- Fixed Toggle visibility interactions with animations not working on Product Category and other complex layout pages.
- Fixed post carousel loading in Tabs module without requiring browser resize.
- Fixed PHP fatal error when importing corrupted databases containing stdClass objects in global_variables data.
- Fixed option group preset reset functionality that was corrupting preset data and causing save failures when resetting preset attributes via right-click context menu.
- Fixed Theme Builder portability options remaining visible when portability permissions were disabled in Role Editor.
- Fixed Canvas Portal interactions failing after first use when sections inside the portal have visibility settings disabled on all devices.
- Added developer documentation for accessing Divi's accent colors in custom modules.
- Add the option to opt in to Divi 5 updates in the Divi Dashboard.
- Added a new option in the Divi Dashboard to opt in to Divi 5 updates.
- Fixed an issue where the Include/Exclude posts dropdown in Loop Builder would shrink in height.
- Fixed Social Media Follow icon color presets not displaying in Theme Builder visual editor.
- Fixed loop excerpts not rendering for custom post types without manual excerpts.
- Fixed button text alignment after migration from Divi 4 to Divi 5. Buttons with center alignment now correctly display as center-aligned instead of left-aligned.
- Fixed Preset Manager preview causing module images to re-render when styling text attributes. Style-only changes now update via style containers without triggering module re-renders, preventing animation re-triggers and visual glitches.
- Fixed Layers View indentation so deeply nested modules display the correct hierarchy.
- Fixed fullwidth slider slide presets not being preserved during D4 to D5 migration by adding missing module name mapping for preset conversion.
- Fixed line-height dynamic content so unitless global numbers can be selected.
- Fixed Theme Builder crash when CheckoutWC Pro plugin is active due to null filter return causing PHP Fatal TypeError.
- Fixed an issue where Social Media Follow Network module attributes (border colors and hover backgrounds) were lost during migration from Divi 4 to Divi 5.
- Fixed the Hero module’s default alignment in the Visual Builder.
- Fixed CSS specificity issue preventing custom CSS from overriding default module styles in Divi 5 modules.

version 5.0.0-public-beta.7.2 ( updated 01-20-2026 )
- Fixed missing alt and title attributes on images using Featured Image dynamic content by automatically populating them from Media Library metadata.
- Fixed infinite recursion and memory exhaustion when generating loop excerpts, and resolved nested loops showing incorrect content. Loop excerpts now generate correctly without triggering recursive loop processing, and nested loops properly render all items with unique content per item.
- Fixed custom attributes not being removed when presets are removed via Interactions. Custom attributes (CSS classes, IDs, alt text, data attributes, etc.) from presets are now properly cleaned up when presets are removed through interaction effects.
- Fixed row gutter width CSS specificity issue where custom row gutter settings were overridden by Theme Customizer defaults, and ensured rows without explicit gutter settings properly inherit from Theme Customizer.
- Fixed font group copy/paste and reset functionality failing for all font groups except Title and Body due to IndexedDB cache collision.
- Documented the label property feature that allows customizing display names for custom attribute elements in module configurations.
- Fixed an issue where premade layouts imported directly into Divi 5 Visual Builder were converted to uneditable "Shortcode" blocks instead of proper row blocks.
- Fixed issue where layout exports would fail when layouts contained admin labels, shortcodes, or variable placeholders that were incorrectly identified as image URLs.
- Updated the Interaction Editor to save changes immediately as you edit, matching the behavior of other field editors for a more consistent experience.
- Fixed border radius values being reset to 0 when extending attributes with "Border Radius" manually selected in "Modified Fields to Extend". All four corner values are now preserved correctly during extend operations.
- Fixed issue where font properties and other nested module attributes could not be edited or reset due to corrupted data structures. Existing corrupted pages are now automatically repaired when opened in the Visual Builder.
- Fixed issue where default placeholder values in transform fields were incorrectly showing values from previously opened modules instead of the current module's preset defaults.
- Updated ChildModule example to use correct pattern for retrieving parent attributes, ensuring child modules can access parent default values and demonstrating proper implementation for third-party developers.
- Fixed third-party modules not receiving default attributes when generating module attribute defaults, ensuring child modules can access parent default values for custom modules.
- Fixed Person module layout issue where removing an image caused text content to be constrained to a narrow column instead of occupying the full module width on the frontend.
- Fixed global library items not saving to Divi Cloud in Divi 5 Visual Builder.
- Fixed parallax background divs overlapping row content by restoring missing position: relative property on rows that existed in Divi 4.
- Fixed an issue where layouts could not be saved when accordion items were open, caused by a middleware that corrupted module attributes during serialization.

version 5.0.0-public-beta.7.1 ( updated 01-19-2026 )
- Fixed global module cancel button to intuitively revert to the last saved state instead of the state when settings were opened, eliminating unnecessary confirmation popups and making the behavior more predictable.
- Fixed global module templates losing their visual styling and selective sync features when opened from Divi Library in Visual Builder. Templates now correctly display green UI styling and allow users to configure selective sync settings.
- Fixed fatal error that occurred when resetting border radius via Inspector.
- Fixed Responsive Editor showing hover state for fields that don't support hover, ensuring consistency with the main Visual Builder hover interface.a.
- Fixed empty columns not showing padding in Visual Builder when background colors or other styling was applied - padding values are now immediately visible during editing.
- Fixed issue where responsive breakpoint styles weren't applying correctly when the Visual Builder viewport was narrower than the breakpoint's intended width.
- Fixed fatal error when importing D5 layouts containing global variables.
- Fixed Button module not showing pointer cursor when HTML element type is set to button.
- Added example plugin demonstrating child-to-parent attribute migration pattern for 3rd party developers migrating D4 modules to D5.
- Fixed the "Disable Translations" theme option to properly disable translations in the D5 Visual Builder.
- Added Conversion Outline tutorial series foundation with structured category, comprehensive introduction page covering all root-level properties, and first detailed tutorial on deprecated properties to help third-party developers create conversion outlines for Divi 4 to Divi 5 module migration.
- Fixed preset visibility settings to display elements with reduced opacity in the Visual Builder instead of completely hiding them, matching the behavior of module-level visibility settings.
- Fixed custom masks and patterns added via JavaScript filters not appearing in Visual Builder UI when filters were registered after Visual Builder initialization.
- Fixed Dark/Light mode toggle in Visual Builder Page Toolbar getting compressed at viewport widths below 1600px by adding a minimum width constraint to maintain proper proportions.
- Fixed global module copy/paste operations incorrectly duplicating across all instances of the same global module template.
- Fixed Conditional Display Date & Time Hour and Minute fields displaying format string instead of numeric values.
- Updated documentation to clarify when and how to use different groupType patterns when configuring module settings, preventing confusion when adding Attributes groups to custom modules.
- Updated Icon module background and decoration styles to apply to the module wrapper instead of the inner wrap for better layout and height compatibility.
- Added documentation for accessing global colors as CSS variables in custom themes and plugins, including a helper function for generating label-based variable names.
- Fixed sticky header layouts breaking on scroll when rows use absolute positioning with centered origins. The transform system now correctly generates centering transforms for sticky state, matching Divi 4 behavior.
- Fixed interaction visibility loss when switching between VB Desktop and Wireframe modes.
- Fixed button-options field type not working correctly when used in Page Settings extensions, allowing third-party developers to use button-style option selection fields in their custom Page Settings panels.
- Fixed specialty section presets not applying styles on the frontend after migration from Divi 4 to Divi 5.
- Fixed third-party modules using 'divi/font-body' in advancedStyles not rendering font styles on the frontend.
- Fixed issue where users with move_module permission enabled but edit_module permission disabled were unable to drag and drop modules in the Visual Builder. Drag and drop now correctly requires only the move_module permission, maintaining proper separation between movement and editing permissions.
- Fixed pricing tables displaying at 50% width on mobile devices after migration from Divi 4. Pricing table items now stack vertically and display at full-width on mobile breakpoints.
- Fixed Divi Library Import UI to use plural text labels and improved success message styling. Added file type filtering to restrict selection to JSON files.
- Added support for unitless line-height values in the Visual Builder, allowing users to set line-height as a multiplier (e.g., 1.7) that scales proportionally with font-size, which is the recommended CSS approach for line-height.
- Fixed Background Mask Transform invert option not working correctly on responsive breakpoints.
- Fixed Pricing Tables module default Layout Wrapping behavior to match Visual Builder default (No Wrap) in frontend display.
- Fixed SVG images in Image Module not respecting min-height and max-height constraints when height is adjusted.
- Fixed WooCommerce Product Images module not updating variation images automatically on single-product pages when Builder is enabled.
- Fixed Removing hide element interactions in Visual Builder now immediately restores element visibility instead of requiring page save/reload.

version 5.0.0-public-beta.7 ( updated 01-16-2026 )
- Added new Preset Manager and Preset Preview systems.
- Added the ability to Export and Import a website's design variables.
- Added the ability to Export and Import a website's presets.
- Fixed text alignment in RTL languages by removing hardcoded left defaults and using RTL-aware CSS values, ensuring modules default to right alignment in RTL mode while preserving explicit alignment choices.
- Fixed elements disabled on all breakpoints being unnecessarily kept in the DOM when not used as interaction targets.
- Fixed fatal error when Floating DiviMenus plugin is active on non-Divi Builder pages by ensuring the builder framework loads when needed for D4 extension compatibility.
- Fixed WooCommerce Product Images module to support Grid/Flex layout spacing controls, allowing users to adjust horizontal and vertical gaps between thumbnail images.
- Fixed issue where modals using "Last Used Position" preference would become undocked when reopened, even if they were docked when closed. Modals now correctly restore their last docking state across close/reopen cycles.
- Fixed line-height option not working for Woo Product Description module in Theme Builder context by ensuring placeholder content includes proper paragraph tags to match regular page HTML structure.
- Fixed an issue where resetting Title Text Color on the module level didn't show the preset color set on the element's preset level for Open Title Text Color in the Toggle module.
- Fixed Blog module Grid Tile Background Color option not appearing when module is first added.
- Fixed background gradient color stops being applied to the wrong module when switching between modules of the same type in Visual Builder.
- Fixed Contact Form fields losing their half-width layout after migrating from Divi 4 to Divi 5. Fields that were half-width in Divi 4 now correctly maintain their half-width layout in Divi 5, even when the width attribute wasn't explicitly set in the original shortcode.
- Fixed raw JSON code appearing on frontend when modules with loop dynamic content are moved outside loop-enabled containers. Modules now display nothing (or configured before/after text) when loop context is unavailable, matching expected behavior.
- Fixed Social Media Follow module horizontal and vertical gap settings not working in flex and grid layouts.
- Fixed an issue where interaction Target Module selections were not persisting after Visual Builder reload for interactions created on child canvas modules.
- Fixed Conditional Display Date & Time Hour and Minute fields displaying format string instead of numeric values.
- Added Role Editor permission enforcement throughout Divi 5 Visual Builder, ensuring role-based restrictions configured in the admin interface are properly respected in the builder interface.
- Fixed fixed sections not accounting for WordPress admin bar height when users are logged in, causing content to be hidden behind the admin bar.
- Fixed button module icons not rendering correctly for different breakpoints.
- Fixed custom CSS specificity issue in Menu and FullwidthMenu modules.
- Fixed global module confirmation popup not appearing when attempting to add modules or perform actions that would close module settings with unsaved changes, ensuring users receive clear feedback and options to save or discard their edits.
- Fixed Button Option Group presets not applying to Hero Module's Button One and Button Two when created on Button module.
- Fixed background preview transparency indication by adding checkerboard pattern that automatically appears when backgrounds have transparent areas, making it easier to distinguish transparent backgrounds from opaque ones.
- Added badge element example to StaticModule demonstrating custom color field styling using decoration.color pattern for 3rd party developers.
- Added task documentation for badge element example demonstrating custom color field styling.
- Fixed background images disappearing on tablet/phone when parallax is enabled on desktop but disabled on smaller breakpoints.
- Fixed an issue where Global Modules with script tags in Code Module content had their script tags stripped when loading from the library. Script tags are now preserved for modules that have the allowHtml property enabled in their metadata.
- Fixed Blog module grid layout breaking when displaying posts with video format by allowing grid items to properly shrink within their allocated column width.
- Fixed crash when accessing Transform settings in Sticky mode by adding null safety checks to transform field components.
- Fixed Visual Builder not displaying opacity for Content Area Background Color when using Global Colors.
- Fixed Row module input placeholder not updating when default maxWidth value is changed via moduleDefaultAttributes filter.
- Fixed free-form CSS selector replacement to correctly handle CSS selectors containing the word "selector" and properly support prefixed selectors in Theme Builder context.
- Fixed Icon List Item module's Align Items setting not taking effect when configured in module settings.
- Fixed unwanted spacing between bar counter items that appeared after migrating from Divi 4 to Divi 5.
- Fixed Slider module style discrepancy after migration from Divi 4 by restoring custom CSS specificity.
- Fixed featured images displaying incorrectly on paginated pages for Theme Builder layouts on taxonomy archive pages by ensuring each layout uses a unique cache key and loop detection functions check the correct post content.
- Fixed Social Media Follow module icons displaying incorrectly in Block layout after D4 to D5 migration in Theme Builder.
- Fixed an issue where hover border color would show black instead of the defined "All Border" color when setting border width on a specific side.
- Fixed modules disabled on desktop remaining visible on wide screens when widescreen/ultrawide breakpoints are disabled.

version 5.0.0-public-beta.6.2 ( updated 01-09-2026 )
- Added documentation page explaining how to use the Divi 5 Migrator Tool and ensure third-party modules are compatible with bulk conversion.
- Fixed copy/paste functionality for heading style attributes in Text module, allowing users to copy all heading attributes (H1-H6) and paste them to any other heading level.
- Fixed Loop Builder "Loop Featured Image" option to work correctly with Media post type by detecting attachment post types and using the appropriate WordPress function to retrieve image URLs.
- Added documentation for the fonts child object in conversion-outline.json, explaining how to map font family settings for different text elements when converting Divi 4 modules to Divi 5.
- Added documentation for implementing Option Group Presets in Divi 5 modules.
- Fixed looped featured images not displaying in Visual Builder when using Canvas Portal with Loop Builder.
- Fixed duplicate tooltips appearing when hovering over preset icons in module settings panels.
- Fixed specialty section column CSS classes and IDs disappearing after migration from Divi 4 to Divi 5.
- Fixed preset tags with long names not showing the X button to remove/unassign presets. Tags now expand to use available modal space while maintaining proper text truncation.
- Fixed an issue where Global Variables with FR unit values were not available in Grid layout field pickers.

version 5.0.0-public-beta.6.1 ( updated 01-08-2026 )
- Fixed sticky elements failing when Theme Builder header and first body section were both sticky.
- Fixed button hover states to respect preset-defined padding values instead of applying hard-coded padding.
- Fixed Grid Offset Rules not saving in WooCommerce Product Gallery and Gallery modules when using Grid layout. Rules now persist correctly when reopening settings and apply properly in both Visual Builder and frontend.
- Fixed Lottie module margin-bottom spacing not applying in Visual Builder and Frontend.
- Fixed Alignment option visibility in Social Media Follow to appear only for block layouts.
- Fixed magnific-popup.js not loading on first page load for Image modules with Lightbox enabled in Theme Builder templates.
- Fixed Person module description element incorrectly applying full width in flex layouts, which broke custom CSS positioning.
- Fixed responsive icon font size not working on tablet and mobile devices when using global presets in Icon and Icon List modules.
- Fixed nested Tabs Modules breaking when parent tabs are clicked by scoping tab selectors to direct children only, allowing nested tabs to function independently.
- Fixed Global Variables not updating immediately in Visual Builder for style attributes like Blurb icon width.
- Fixed WooCommerce modules not honoring default border color when border width is set without explicitly setting a color.
- Fixed Woo Product Tabs module displaying PHP warning and missing description tab content when Theme Builder layouts are empty.

version 5.0.0-public-beta.6 ( updated 01-07-2026 )
- Added translation support for D5 Visual Builder UI in all 32 supported languages.
- Fixed Video Slider overlay and play icon not appearing for hosted MP4 videos.
- Fixed issue where custom breakpoints enabled in Sitewide Responsive Breakpoints didn't appear in module visibility options, preventing users from hiding modules on custom breakpoints.
- Fixed Circle Counter Circle Background Color and Circle Background Opacity preset values not appearing in module settings panel when preset is applied.
- Fixed "Download Backup" button in save failure modal to actually download a JSON backup of the current page using the portability export system.
- Fixed module locking functionality TypeScript errors and added visual lock indicator with proper styling for locked modules in the Visual Builder.
- Fixed gradient not rendering in Visual Builder when using global colors with parallax background images.
- Added support for importing multiple layout files simultaneously in Divi Library Portability.
- Fixed Body Text option group appearing in Woo Notice module Design Tab for Product and Cart page types where it doesn't apply. The group now only appears when Page Type is set to Checkout.
- Fixed ACF repeater fields inside group fields not being accessible in Loop Builder by implementing recursive field discovery and proper name prefixing for nested ACF structures.
- Updated documentation to clarify optimal patterns for registering custom field components in Divi 5 modules, including all three use cases and hook timing explanations.
- Fixed inconsistent slide transition timing in Group Carousel automatic rotation when reaching carousel boundaries.
- Fixed modal closing unexpectedly when clicking outside dropdown fields inside Custom Attributes and Interaction Builder modals. Dropdowns now close independently without closing the entire modal.
- Fixed random order loop featured images not updating on page reloads.
- Fixed Code module adding unwanted bottom margin after migration from Divi 4 to Divi 5.
- Fixed PHP warnings for undefined array key 'isCatchAll' in Display Conditions when processing categories and tags conditions.
- Fixed Grid layout unit picker to display the fr (fraction) unit as a selectable option, improving discoverability and usability for CSS Grid layouts.
- Fixed missing alt and title attributes in Loop Builder featured images by automatically populating them from Media Library metadata when displayed in Theme Builder templates.
- Fixed loop-enabled blocks not being detected when loop configuration contains nested JSON structures, causing loop variables to display as raw markup on the front-end.
- Fixed Migrator showing incorrect module counts when re-running compatibility check after editing content in Divi 4.
- Fixed slide-in header submenu expansion functionality by ensuring the required JavaScript handler loads for slide-in header style.
- Fixed empty columns in Visual Builder so custom border styles work correctly without being overridden by the default empty column indicator.
- Fixed transparent header not overlaying Hero module correctly in D5 - padding now applies to the module instead of the section wrapper, matching D4 behavior.
- Fixed an issue where manually setting Layout Style field to "flex" (the default value) incorrectly displayed it as a modified value with dark text and reset icon.
- Fixed Page Portability losing tab visibility and incorrect import routing when opened after Library Portability.
- Fixed background gradient not inheriting from desktop breakpoint when parallax is enabled on tablet and phone breakpoints.
- Fixed math function values (calc, clamp, min, max) not displaying in CSSNumeric input fields for smaller breakpoints when they differ from the default value.
- Fixed nested modules disappearing on front-end when parent module has responsive content by filtering element updates to only affect direct children, preventing descendant selectors from incorrectly matching nested modules' content.
- Fixed border-radius disappearing on hover for sections with parallax background images in Visual Builder.
- Added Root-Level Objects Overview documentation page explaining the structure and purpose of all seven root-level objects in conversion-outline.json files.
- Added comprehensive tutorial documentation for valueExpansionFunctionMap and nonResponsiveAttributes properties in conversion-outline.json, including a complete reference table of all available expansion functions and detailed examples for third-party developers.
- Added best practices documentation for conversion-outline.json files covering common patterns, testing strategies, troubleshooting tips, and maintenance guidance.
- Fixed button icon vertical alignment issue in WooCommerce Cart Totals, Checkout Payment, and Cart Notice modules when using default icons with "Show Button Icon" enabled (#46974).
- Fixed button icon spacing issue in WooCommerce Product Add To Cart module to match other modules and custom icon spacing (#46975).
- Fixed WooCommerce zoom icons and styles not loading on archive pages when using Theme Builder templates with WooCommerce modules.
- Fixed logo images in Hero module loading with incorrect size and then resizing in Visual Builder by persisting fetched width and height attributes to module attributes.
- Fixed incorrect cursor pointers for locked modules. Lock icons now consistently show the pointer cursor for all locked elements (Sections, Rows, and Modules), and locked modules themselves show the not-allowed cursor to indicate they cannot be moved.
- Fixed Icon List Item align-items CSS being overridden by default styles when using column layout direction.
- Fixed PHP 8.4 deprecation warnings by explicitly declaring nullable type hints for optional parameters in MultiView utility trait.
- Fixed Image module justify-self alignment not working in CSS Grid layouts due to auto margin conflict.
- Fixed an issue where redo stopped working when restoring global colors during history operations. The fix also resolves the same issue when applying presets with global colors.
- Fixed Responsive Editor richtext fields incorrectly updating all breakpoints when typing, and added automatic breakpoint switching when focusing on richtext fields in the Responsive Editor.
- Added developer documentation for programmatically clearing CSS cache, including filter and action hook usage examples.
- Fixed PHP fatal error when mb_convert_encoding() is called without mbstring extension available in AdvancedOptionConversion.
- Fixed PHP fatal error when mb_ord() receives empty string or when mbstring extension is unavailable in Customizer button icon settings.
- Fixed nested Text module design styles not applying correctly in Visual Builder when parent and child modules have conflicting styles.
- Fixed Modified Filter not showing both top and bottom section divider fields when both are modified.
- Fixed module and group preset stack changes not synchronizing across global module instances. Also fixed issue where removing all group presets prevented adding new presets after page refresh.
- Fixed inconsistent automatic modal opening when using "Add Element Above" on sections.
- Fixed main canvas losing its main status when exported from canvas grid view.
- Fixed a PHP notice that appeared in error logs when displaying Audio, Link, or Quote post format posts in the Blog module.
- Fixed module drag and drop failing when custom CSS classes contained leading dots or other invalid constructs.
- Fixed an issue where background gradients could not be disabled after being enabled, especially when gradient length was set.
- Fixed Gallery module box shadow not following border radius in Slider layout by applying border-radius to the module container level.
- Fixed wireframe mode to respect row flex-wrap settings, ensuring columns display side-by-side when flex-wrap is set to nowrap, matching desktop view behavior.
- Fixed an issue where Layout attributes were not included when copying and pasting Item Styles between modules.
- Fixed Video Slider thumbnails not displaying in tabs after the first tab when Video Slider modules are nested inside Tabs modules.
- Fixed inability to permanently delete D4 element presets after migration to D5.
- Fixed an issue where CTA modules migrated from Divi 4 with background disabled displayed unwanted padding that wasn't present in the original Divi 4 layout.
- Fixed Group Carousel automatic rotation speed unit conversion so that seconds unit setting takes effect correctly.
- Fixed Post Content Module not rendering product content when WooCommerce modules are present in Theme Builder product templates.
- Added context detection mechanism for Post Content Module rendering to enable context-aware content suppression in Theme Builder templates.
- Fixed Contact Form dropdown fields marked as "not required" incorrectly showing validation errors when left unselected during form submission.
- Fixed transparent Content Area Background Color not working in Theme Builder layouts.
- Fixed documentation to clarify that custom module fields must reference existing group names, not panel names, when using groupSlug or groupName properties in filter hooks.
- Fixed Icon List module icon margin-top spacing not applying when customized in module settings. The spacing setting now correctly overrides the default 5px margin-top value.
- Updated documentation feedback footnotes to remove Discord reference and ensure consistent formatting across all documentation pages.
- Fixed Contact Form module reCAPTCHA v3 integration by sanitizing form UUIDs to comply with Google's action name character requirements, allowing forms with reCAPTCHA v3 enabled to submit successfully.
- Fixed Person module layout changing from block to flex during Divi 4 to Divi 5 migration, preserving the original Divi 4 block layout appearance.
- Fixed Icon List item layout direction not displaying correctly in Theme Builder canvas preview.
- Fixed Image and Fullwidth Image modules' Overlay option group not appearing in preset mode, and enabled Option Group Preset functionality for Overlay and Alignment groups.
- Fixed Video Slider thumbnails not displaying in Accordion Module items after the first item.
- Fixed Woo Product Images module preview not updating in Visual Builder when toggling Show Featured Image, Show Gallery Images, or Show Sale Badge options.
- Fixed VB Library Import not allowing multiple file selection when importing layouts from the library.
- Fixed border not appearing on Woo Checkout Payment module and other modules with default border styles when border width was set without explicitly setting border style.
- Fixed Woo Product Gallery Module images being cropped when using Slider layout in Divi 5.
- Updated documentation to remove outdated references to JavaScript conversion processing and clarify that only JSON files are used by PHP migration system for module conversion.

version 5.0.0-public-beta.5.2 ( updated 01-02-2026 )
- Added new HTML option group.
- Added a new Element Type option to select semantic tags for any element.
- Added new HTML Before & HTML After options to all elements.
- Fixed broken styles that occurred on the second page load on pages that used Theme Builder Templates ,along with post content that targeted an off-canvas element via an interaction.
- Fixed range field spinner arrows not respecting decimal step values (e.g., 0.05), causing incorrect increments. Spinner now correctly steps by the configured decimal value while maintaining backward compatibility for integer steps.
- Fixed column bottom margin not applying on tablet and mobile breakpoints when custom values were set.
- Added documentation for the parent child object in module.json.
- Added tutorial documentation for the wrapper parent object in module.json, covering wrapper status and HTML tag configuration for third-party module developers.
- Added documentation tutorial for customCssFields property in module.json, explaining how to define custom CSS input fields for modules.
- Added best practices tutorial for module.json configuration files to help developers create well-structured and maintainable module configurations.
- Fixed Global Color labels not displaying in module settings after importing layouts containing Global Colors.
- Fixed CSS Grid layout to allow any number of columns instead of being limited to 12 columns maximum.
- Added tutorial documentation for the module object in conversion-outline.json, covering content mappings, inner content patterns, header levels, and inline fonts with examples from core modules.
- Added tutorial documentation for advanced properties in conversion-outline.json, covering direct mappings and child objects with examples from core modules.
- Added tutorial documentation for the text_shadow child object in conversion-outline.json, explaining how to map text shadow settings from Divi 4 to Divi 5.
- Added documentation for box shadow mappings in conversion-outline.json, explaining how to map box shadow settings from Divi 4 to Divi 5 for both module-level and element-specific shadows.
- Added tutorial documentation for borders child object in conversion-outline.json, explaining how to map border decoration properties from Divi 4 to Divi 5 with examples from core modules.
- Added tutorial documentation for filters property in conversion-outline.json, explaining how to map CSS filter settings from Divi 4 to Divi 5 decoration properties for both module-level and child element filters.
- Added CSS Properties tutorial documentation explaining CSS selector mappings in conversion-outline.json files.
- Added documentation for module.json basic properties to help third-party developers understand fundamental module configuration options.
- Fixed some third-party plugin shortcodes losing attribute values when migrating from Divi 4 to Divi 5.
- Fixed Toggle module title colors not applying when nested inside Slides with dark backgrounds.
- Fixed WooCommerce product duplication corrupting Divi 5 content by ensuring proper content escaping.
- Fixed inconsistent ellipsis formatting in Loop Excerpt between Visual Builder and Frontend by ensuring full content is sent from server and ellipsis is consistently added after truncation based on user's word limit setting.
	* includes/builder-5/docs/manual/docs/explanations/module/module-metadata/basic-properties.mdx
	* includes/builder-5/docs/manual/docs/explanations/module/module-metadata/best-practices.mdx
	* includes/builder-5/docs/manual/docs/explanations/module/module-metadata/custom-css-fields.mdx
	* includes/builder-5/docs/manual/docs/explanations/module/module-metadata/parent-child-modules.mdx
	* includes/builder-5/docs/manual/docs/explanations/module/module-metadata/wrapper.mdx
	* includes/builder-5/docs/manual/docs/internal/d5/getting-started/06-code-formatting.mdx
	* includes/builder-5/server/Framework/ABTesting/ABTesting.php
	* includes/builder-5/server/Framework/Breakpoint/Breakpoint.php
	* includes/builder-5/server/Framework/Controllers/RESTController.php
	* includes/builder-5/server/Framework/Customizer/Customizer.php
	* includes/builder-5/server/Framework/DependencyManagement/DependencyTree.php
	* includes/builder-5/server/Framework/FeaturesManager/FeaturesManager.php
	* includes/builder-5/server/Framework/FeaturesManager/FeaturesManagerTraits/GetTrait.php
	* includes/builder-5/server/Framework/Portability/PortabilityPost.php
	* includes/builder-5/server/Framework/Portability/PortabilityPostTraits/GetGlobalColorsDataTrait.php
	* includes/builder-5/server/Framework/REST/REST.php
	* includes/builder-5/server/Framework/Revision/Revision.php
	* includes/builder-5/server/Framework/Route/RESTRoute.php
	* includes/builder-5/server/Framework/Settings/Overflow.php
	* includes/builder-5/server/Framework/Settings/PageSettings.php
	* includes/builder-5/server/Framework/UserRole/UserRole.php
	* includes/builder-5/server/Framework/Utility/ArrayUtility.php
	* includes/builder-5/server/Framework/Utility/ArrayUtilityTraits/DiffTrait.php
	* includes/builder-5/server/Framework/Utility/ArrayUtilityTraits/FilterDeepTrait.php
	* includes/builder-5/server/Framework/Utility/ArrayUtilityTraits/FindTrait.php
	* includes/builder-5/server/Framework/Utility/ArrayUtilityTraits/GetValueTrait.php
	* includes/builder-5/server/Framework/Utility/ArrayUtilityTraits/IsAssocTrait.php
	* includes/builder-5/server/Framework/Utility/ArrayUtilityTraits/IsListTrait.php
	* includes/builder-5/server/Framework/Utility/ArrayUtilityTraits/MapDeepTrait.php
	* includes/builder-5/server/Framework/Utility/Conditions.php
	* includes/builder-5/server/Framework/Utility/DependencyChangeDetector.php
	* includes/builder-5/server/Framework/Utility/Filesystem.php
	* includes/builder-5/server/Framework/Utility/HTMLUtility.php
	* includes/builder-5/server/Framework/Utility/LocaleUtility.php
	* includes/builder-5/server/Framework/Utility/PostUtility.php
	* includes/builder-5/server/Framework/Utility/SiteSettings.php
	* includes/builder-5/server/Framework/Utility/StringUtility.php
	* includes/builder-5/server/Framework/Utility/TextTransform.php
	* includes/builder-5/server/FrontEnd/Assets/CriticalCSS.php
	* includes/builder-5/server/FrontEnd/Assets/DetectFeature.php
	* includes/builder-5/server/FrontEnd/Assets/DynamicAssets.php
	* includes/builder-5/server/FrontEnd/Assets/DynamicAssetsUtils.php
	* includes/builder-5/server/FrontEnd/Assets/StaticCSS.php
	* includes/builder-5/server/FrontEnd/Assets/StaticCSSElement.php
	* includes/builder-5/server/FrontEnd/BlockParser/BlockParser.php
	* includes/builder-5/server/FrontEnd/BlockParser/BlockParserBlock.php
	* includes/builder-5/server/FrontEnd/BlockParser/BlockParserBlockRoot.php
	* includes/builder-5/server/FrontEnd/BlockParser/BlockParserStore.php
	* includes/builder-5/server/FrontEnd/BlockParser/SimpleBlockParser.php
	* includes/builder-5/server/FrontEnd/BlockParser/SimpleBlockParserStore.php
	* includes/builder-5/server/FrontEnd/FrontEnd.php
	* includes/builder-5/server/FrontEnd/Module/Fonts.php
	* includes/builder-5/server/FrontEnd/Module/Script.php
	* includes/builder-5/server/FrontEnd/Module/ScriptData.php
	* includes/builder-5/server/FrontEnd/Module/Style.php
	* includes/builder-5/server/Library/LibraryUtility.php
	* includes/builder-5/server/Library/LibraryUtilityTraits/PrepareLibraryTermsTrait.php
	* includes/builder-5/server/Migration/AttributeMigration.php
	* includes/builder-5/server/Migration/FlexboxMigration.php
	* includes/builder-5/server/Migration/FullwidthPortfolioMigration.php
	* includes/builder-5/server/Migration/Migration.php
	* includes/builder-5/server/Migration/MigrationContentInterface.php
	* includes/builder-5/server/Migration/MigrationInterface.php
	* includes/builder-5/server/Migration/MigrationPresetsInterface.php
	* includes/builder-5/server/Migration/NestedModuleMigration.php
	* includes/builder-5/server/Migration/NestedModulePresetMigration.php
	* includes/builder-5/server/Migration/PresetStackMigration.php
	* includes/builder-5/server/Migration/Utils/MigrationUtils.php
	* includes/builder-5/server/Packages/Conversion/AdvancedOptionConversion.php
	* includes/builder-5/server/Packages/Conversion/ConditionalAttributeConversion.php
	* includes/builder-5/server/Packages/Conversion/Conversion.php
	* includes/builder-5/server/Packages/Conversion/LegacyAttributeNames.php
	* includes/builder-5/server/Packages/Conversion/ShortcodeMigration.php
	* includes/builder-5/server/Packages/Conversion/Utils/ConversionUtils.php
	* includes/builder-5/server/Packages/Conversion/ValueExpansion.php
	* includes/builder-5/server/Packages/DividerLibrary/DividerSvg/DividerSvg.php
	* includes/builder-5/server/Packages/DividerLibrary/Utils/DividerUtils.php
	* includes/builder-5/server/Packages/GlobalData/GlobalData.php
	* includes/builder-5/server/Packages/GlobalData/GlobalDataController.php
	* includes/builder-5/server/Packages/GlobalData/GlobalPreset.php
	* includes/builder-5/server/Packages/GlobalData/GlobalPresetController.php
	* includes/builder-5/server/Packages/GlobalData/GlobalPresetItem.php
	* includes/builder-5/server/Packages/GlobalData/GlobalPresetItemGroup.php
	* includes/builder-5/server/Packages/GlobalData/GlobalPresetItemGroupAttrNameResolved.php
	* includes/builder-5/server/Packages/GlobalData/GlobalPresetItemGroupAttrNameResolver.php
	* includes/builder-5/server/Packages/GlobalData/GlobalPresetItemGroupUtils.php
	* includes/builder-5/server/Packages/GlobalLayout/GlobalLayout.php
	* includes/builder-5/server/Packages/MaskAndPatternLibrary/MaskSvg/MaskSvg.php
	* includes/builder-5/server/Packages/MaskAndPatternLibrary/PatternSvg/PatternSvg.php
	* includes/builder-5/server/Packages/MaskAndPatternLibrary/Utils/MaskAndPatternUtils.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentACFUtils.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentElements.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentOptionBase.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentOptionCustomPostLinkUrl.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentOptionPostCategories.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentOptionPostMetaKey.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentOptionPostTags.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentOptionProductAdditionalInformation.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentOptionProductDescription.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentOptionProductPrice.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentOptionProductReviews.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentOptionProductReviewsCount.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentOptionProductReviewsTab.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentOptionProductSKU.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentOptionProductShortDescription.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentOptions.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentOptionsController.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentPosts.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentUtils.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicData/DynamicData.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicData/DynamicDataController.php
	* includes/builder-5/server/Packages/Module/Layout/Components/ModuleElements/ModuleElements.php
	* includes/builder-5/server/Packages/Module/Layout/Components/ModuleElements/ModuleElementsUtils.php
	* includes/builder-5/server/Packages/Module/Layout/Components/MultiView/MultiViewAssets.php
	* includes/builder-5/server/Packages/Module/Layout/Components/MultiView/MultiViewElement.php
	* includes/builder-5/server/Packages/Module/Layout/Components/MultiView/MultiViewElementValue.php
	* includes/builder-5/server/Packages/Module/Layout/Components/MultiView/MultiViewInfo.php
	* includes/builder-5/server/Packages/Module/Layout/Components/MultiView/MultiViewScriptDataTraits/SetClassNameTrait.php
	* includes/builder-5/server/Packages/Module/Layout/Components/MultiView/MultiViewUtils.php
	* includes/builder-5/server/Packages/Module/Layout/Components/Style/Utils/Utils.php
	* includes/builder-5/server/Packages/Module/Layout/Components/StyleCommon/CommonStyle.php
	* includes/builder-5/server/Packages/Module/Layout/Components/StyleCommon/CommonStyleTraits/StyleTrait.php
	* includes/builder-5/server/Packages/Module/Module.php
	* includes/builder-5/server/Packages/Module/Options/Animation/AnimationScriptData.php
	* includes/builder-5/server/Packages/Module/Options/Animation/AnimationUtils.php
	* includes/builder-5/server/Packages/Module/Options/Background/BackgroundAssets.php
	* includes/builder-5/server/Packages/Module/Options/Background/BackgroundClassnames.php
	* includes/builder-5/server/Packages/Module/Options/Background/BackgroundComponentMask.php
	* includes/builder-5/server/Packages/Module/Options/Background/BackgroundComponentParallax.php
	* includes/builder-5/server/Packages/Module/Options/Background/BackgroundComponentParallaxItem.php
	* includes/builder-5/server/Packages/Module/Options/Background/BackgroundComponentParallaxItemTraits/ComponentTrait.php
	* includes/builder-5/server/Packages/Module/Options/Background/BackgroundComponentParallaxTraits/ComponentTrait.php
	* includes/builder-5/server/Packages/Module/Options/Background/BackgroundComponentVideo.php
	* includes/builder-5/server/Packages/Module/Options/Background/BackgroundComponents.php
	* includes/builder-5/server/Packages/Module/Options/Background/BackgroundStyle.php
	* includes/builder-5/server/Packages/Module/Options/Background/BackgroundVideoScriptData.php
	* includes/builder-5/server/Packages/Module/Options/Border/BorderStyle.php
	* includes/builder-5/server/Packages/Module/Options/BoxShadow/BoxShadowComponents.php
	* includes/builder-5/server/Packages/Module/Options/BoxShadow/BoxShadowStyle.php
	* includes/builder-5/server/Packages/Module/Options/BoxShadow/BoxShadowUtils.php
	* includes/builder-5/server/Packages/Module/Options/Button/ButtonComponent.php
	* includes/builder-5/server/Packages/Module/Options/Button/ButtonIconStyle.php
	* includes/builder-5/server/Packages/Module/Options/Button/ButtonStyle.php
	* includes/builder-5/server/Packages/Module/Options/Conditions/Conditions.php
	* includes/builder-5/server/Packages/Module/Options/Conditions/ConditionsHooks.php
	* includes/builder-5/server/Packages/Module/Options/Conditions/ConditionsRenderer.php
	* includes/builder-5/server/Packages/Module/Options/Conditions/RESTControllers/AuthorConditionRESTController.php
	* includes/builder-5/server/Packages/Module/Options/Conditions/RESTControllers/CategoriesRESTController.php
	* includes/builder-5/server/Packages/Module/Options/Conditions/RESTControllers/ConditionsStatusRESTController.php
	* includes/builder-5/server/Packages/Module/Options/Conditions/RESTControllers/PostMetaFieldsRESTController.php
	* includes/builder-5/server/Packages/Module/Options/Conditions/RESTControllers/PostsRESTController.php
	* includes/builder-5/server/Packages/Module/Options/Conditions/RESTControllers/TagsRESTController.php
	* includes/builder-5/server/Packages/Module/Options/Conditions/RESTControllers/UserRoleConditionRESTController.php
	* includes/builder-5/server/Packages/Module/Options/Css/CssStyle.php
	* includes/builder-5/server/Packages/Module/Options/Css/CssStyleUtils.php
	* includes/builder-5/server/Packages/Module/Options/DisabledOn/DisabledOnStyle.php
	* includes/builder-5/server/Packages/Module/Options/Dividers/DividersComponent.php
	* includes/builder-5/server/Packages/Module/Options/Dividers/DividersStyle.php
	* includes/builder-5/server/Packages/Module/Options/Dividers/DividersUtils.php
	* includes/builder-5/server/Packages/Module/Options/Element/ElementClassnames.php
	* includes/builder-5/server/Packages/Module/Options/Element/ElementComponents.php
	* includes/builder-5/server/Packages/Module/Options/Element/ElementScriptData.php
	* includes/builder-5/server/Packages/Module/Options/Element/ElementStyle.php
	* includes/builder-5/server/Packages/Module/Options/Elements/ElementsPresetAttrsMap.php
	* includes/builder-5/server/Packages/Module/Options/Filters/FiltersStyle.php
	* includes/builder-5/server/Packages/Module/Options/Font/FontStyle.php
	* includes/builder-5/server/Packages/Module/Options/FontBodyGroup/BlockquoteFontStyle.php
	* includes/builder-5/server/Packages/Module/Options/FontBodyGroup/FontBodyStyle.php
	* includes/builder-5/server/Packages/Module/Options/FontBodyGroup/ListFontStyle.php
	* includes/builder-5/server/Packages/Module/Options/FontHeaderGroup/FontHeaderStyle.php
	* includes/builder-5/server/Packages/Module/Options/FormField/FormFieldStyle.php
	* includes/builder-5/server/Packages/Module/Options/Gutter/GutterPresetAttrsMap.php
	* includes/builder-5/server/Packages/Module/Options/Html/HtmlPresetAttrsMap.php
	* includes/builder-5/server/Packages/Module/Options/Icon/IconPresetAttrsMap.php
	* includes/builder-5/server/Packages/Module/Options/Icon/IconStyle.php
	* includes/builder-5/server/Packages/Module/Options/IdClasses/IdClassesClassnames.php
	* includes/builder-5/server/Packages/Module/Options/Interactions/InteractionsPresetAttrsMap.php
	* includes/builder-5/server/Packages/Module/Options/Interactions/InteractionsScriptData.php
	* includes/builder-5/server/Packages/Module/Options/Layout/LayoutStyle.php
	* includes/builder-5/server/Packages/Module/Options/Link/LinkScriptData.php
	* includes/builder-5/server/Packages/Module/Options/Link/LinkUtils.php
	* includes/builder-5/server/Packages/Module/Options/Loop/LoopUtils.php
	* includes/builder-5/server/Packages/Module/Options/Loop/QueryOrderBy/QueryOrderByController.php
	* includes/builder-5/server/Packages/Module/Options/Loop/QueryPosts/QueryPostsController.php
	* includes/builder-5/server/Packages/Module/Options/Loop/QueryResults/QueryResultsController.php
	* includes/builder-5/server/Packages/Module/Options/Loop/QueryTaxonomies/QueryTaxonomiesController.php
	* includes/builder-5/server/Packages/Module/Options/Loop/QueryType/QueryTypeController.php
	* includes/builder-5/server/Packages/Module/Options/Loop/WooCommerceLoopHandler.php
	* includes/builder-5/server/Packages/Module/Options/ModuleOptionsPresetAttrs.php
	* includes/builder-5/server/Packages/Module/Options/Order/OrderStyle.php
	* includes/builder-5/server/Packages/Module/Options/Overflow/OverflowStyle.php
	* includes/builder-5/server/Packages/Module/Options/Position/PositionStyle.php
	* includes/builder-5/server/Packages/Module/Options/Scroll/ScrollEffectsScriptData.php
	* includes/builder-5/server/Packages/Module/Options/Scroll/ScrollEffectsUtils.php
	* includes/builder-5/server/Packages/Module/Options/Scroll/ScrollPresetAttrsMap.php
	* includes/builder-5/server/Packages/Module/Options/Sizing/SizingStyle.php
	* includes/builder-5/server/Packages/Module/Options/Spacing/SpacingStyle.php
	* includes/builder-5/server/Packages/Module/Options/Sticky/StickyScriptData.php
	* includes/builder-5/server/Packages/Module/Options/Sticky/StickyUtils.php
	* includes/builder-5/server/Packages/Module/Options/Text/TextClassnames.php
	* includes/builder-5/server/Packages/Module/Options/Text/TextStyle.php
	* includes/builder-5/server/Packages/Module/Options/TextShadow/TextShadowStyle.php
	* includes/builder-5/server/Packages/Module/Options/Transform/TransformStyle.php
	* includes/builder-5/server/Packages/Module/Options/Transition/TransitionSelectorUtils.php
	* includes/builder-5/server/Packages/Module/Options/Transition/TransitionStyle.php
	* includes/builder-5/server/Packages/Module/Options/WooCommerceSelectProduct/WooCommerceSelectProductController.php
	* includes/builder-5/server/Packages/Module/Options/ZIndex/ZIndexStyle.php
	* includes/builder-5/server/Packages/ModuleLibrary/Accordion/AccordionModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Accordion/AccordionPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/AccordionItem/AccordionItemModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/AccordionItem/AccordionItemPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/Audio/AudioController.php
	* includes/builder-5/server/Packages/ModuleLibrary/Audio/AudioModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/BarCounters/BarCountersModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/BarCounters/BarCountersPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/BarCountersItem/BarCountersItemModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/BarCountersItem/BarCountersItemPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/Blog/BlogController.php
	* includes/builder-5/server/Packages/ModuleLibrary/Blog/BlogModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Blog/BlogPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/Blurb/BlurbModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Button/ButtonModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Button/ButtonPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/CTA/CTAModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/CTA/CTAPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/CanvasPortal/CanvasPortalModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/CircleCounter/CircleCounterModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/CircleCounter/CircleCounterPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/Code/CodeModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Column/ColumnModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/ColumnInner/ColumnInnerModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Comments/CommentsModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Comments/CommentsPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/Comments/templates/comments_template.php
	* includes/builder-5/server/Packages/ModuleLibrary/ContactField/ContactFieldModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/ContactField/ContactFieldPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/ContactForm/ContactFormHandler.php
	* includes/builder-5/server/Packages/ModuleLibrary/ContactForm/ContactFormModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/ContactForm/ContactFormPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/ContactForm/ContactFormUtils.php
	* includes/builder-5/server/Packages/ModuleLibrary/CountdownTimer/CountdownTimerModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/CountdownTimer/CountdownTimerPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/Divider/DividerModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/FilterablePortfolio/FilterablePortfolioController.php
	* includes/builder-5/server/Packages/ModuleLibrary/FilterablePortfolio/FilterablePortfolioModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/FilterablePortfolio/FilterablePortfolioPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/FullwidthCode/FullwidthCodeModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/FullwidthCode/FullwidthCodePresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/FullwidthHeader/FullwidthHeaderModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/FullwidthHeader/FullwidthHeaderPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/FullwidthImage/FullwidthImageModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/FullwidthImage/FullwidthImagePresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/FullwidthMap/FullwidthMapModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/FullwidthMap/FullwidthMapPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/FullwidthMenu/FullwidthMenuHTMLController.php
	* includes/builder-5/server/Packages/ModuleLibrary/FullwidthMenu/FullwidthMenuModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/FullwidthMenu/FullwidthMenuPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/FullwidthMenu/FullwidthMenuTermsController.php
	* includes/builder-5/server/Packages/ModuleLibrary/FullwidthMenu/FullwidthMenuUtils.php
	* includes/builder-5/server/Packages/ModuleLibrary/FullwidthPortfolio/FullwidthPortfolioController.php
	* includes/builder-5/server/Packages/ModuleLibrary/FullwidthPortfolio/FullwidthPortfolioModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/FullwidthPortfolio/FullwidthPortfolioPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/FullwidthPostContent/FullwidthPostContentModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/FullwidthPostContent/FullwidthPostContentPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/FullwidthPostSlider/FullwidthPostSliderModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/FullwidthPostSlider/FullwidthPostSliderPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/FullwidthPostTitle/FullwidthPostTitleModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/FullwidthPostTitle/FullwidthPostTitlePresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/FullwidthSlider/FullwidthSliderModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/FullwidthSlider/FullwidthSliderPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/Gallery/GalleryController.php
	* includes/builder-5/server/Packages/ModuleLibrary/Gallery/GalleryModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Gallery/GalleryPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/Group/GroupModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/GroupCarousel/GroupCarouselModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Heading/HeadingModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Heading/HeadingPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/Icon/IconModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Icon/IconPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/IconList/IconListModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/IconListItem/IconListItemModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Image/ImageModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Image/ImagePresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/Image/Styles/Sizing/SizingStyle.php
	* includes/builder-5/server/Packages/ModuleLibrary/Image/Styles/Sizing/SizingStyleTraits/StyleDeclarationTrait.php
	* includes/builder-5/server/Packages/ModuleLibrary/Image/Styles/Sizing/SizingStyleTraits/StyleTrait.php
	* includes/builder-5/server/Packages/ModuleLibrary/Image/Styles/Spacing/SpacingStyle.php
	* includes/builder-5/server/Packages/ModuleLibrary/Image/Styles/Spacing/SpacingStyleTraits/StyleDeclarationTrait.php
	* includes/builder-5/server/Packages/ModuleLibrary/Image/Styles/Spacing/SpacingStyleTraits/StyleTrait.php
	* includes/builder-5/server/Packages/ModuleLibrary/Login/LoginModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Login/LoginPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/Lottie/LottieModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Map/MapModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Map/MapPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/MapItem/MapItemModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Menu/MenuHTMLController.php
	* includes/builder-5/server/Packages/ModuleLibrary/Menu/MenuModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Menu/MenuPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/Menu/MenuTermsController.php
	* includes/builder-5/server/Packages/ModuleLibrary/Menu/MenuUtils.php
	* includes/builder-5/server/Packages/ModuleLibrary/ModuleRegistration.php
	* includes/builder-5/server/Packages/ModuleLibrary/NumberCounter/NumberCounterModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Portfolio/PortfolioController.php
	* includes/builder-5/server/Packages/ModuleLibrary/Portfolio/PortfolioModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Portfolio/PortfolioPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/PostContent/PostContentModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/PostNavigation/PostNavigationController.php
	* includes/builder-5/server/Packages/ModuleLibrary/PostNavigation/PostNavigationModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/PostNavigation/PostNavigationPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/PostSlider/PostSliderModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/PostSlider/PostSliderPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/PostTitle/PostTitleModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/PostTitle/PostTitlePresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/PricingTables/PricingTablesModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/PricingTables/PricingTablesPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/PricingTablesItem/PricingTablesItemModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Row/RowModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Row/RowModuleTraits/GetColumnClassnameTrait.php
	* includes/builder-5/server/Packages/ModuleLibrary/Row/RowPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/RowInner/RowInnerModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Search/SearchModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Section/SectionModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Section/SectionPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/Sidebar/SidebarController.php
	* includes/builder-5/server/Packages/ModuleLibrary/Sidebar/SidebarModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Sidebar/SidebarPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/Signup/SignupHandler.php
	* includes/builder-5/server/Packages/ModuleLibrary/Signup/SignupModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Signup/SignupPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/SignupCustomField/SignupCustomFieldModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/SignupCustomField/SignupCustomFieldPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/Slide/SlideModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Slide/SlidePresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/Slider/SliderModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Slider/SliderPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/SocialMediaFollow/SocialMediaFollowModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/SocialMediaFollow/SocialMediaFollowPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/SocialMediaFollowItem/SocialMediaFollowItemModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Tab/TabModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Tab/TabPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/Tabs/TabsModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Tabs/TabsPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/TeamMember/TeamMemberModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/TeamMember/TeamMemberModuleTraits/ModuleStylesTrait.php
	* includes/builder-5/server/Packages/ModuleLibrary/Testimonial/TestimonialModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Testimonial/TestimonialPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/Text/TextModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Text/TextPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/Toggle/ToggleModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Toggle/TogglePresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/Video/VideoCoverController.php
	* includes/builder-5/server/Packages/ModuleLibrary/Video/VideoHTMLController.php
	* includes/builder-5/server/Packages/ModuleLibrary/Video/VideoModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Video/VideoPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/Video/VideoThumbnailController.php
	* includes/builder-5/server/Packages/ModuleLibrary/VideoSlider/VideoSlideThumbnailController.php
	* includes/builder-5/server/Packages/ModuleLibrary/VideoSlider/VideoSliderModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/VideoSlider/VideoSliderPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/VideoSliderItem/VideoSliderItemModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/VideoSliderItem/VideoSliderItemPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/Breadcrumb/WooCommerceBreadcrumbController.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/Breadcrumb/WooCommerceBreadcrumbModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/CartNotice/WooCommerceCartNoticeController.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/CartNotice/WooCommerceCartNoticeModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/CartProducts/WooCommerceCartProductsController.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/CartProducts/WooCommerceCartProductsModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/CartTotals/WooCommerceCartTotalsController.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/CartTotals/WooCommerceCartTotalsModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/CheckoutBilling/WooCommerceCheckoutBillingController.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/CheckoutBilling/WooCommerceCheckoutBillingModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/CheckoutInformation/WooCommerceCheckoutInformationController.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/CheckoutInformation/WooCommerceCheckoutInformationModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/CheckoutOrderDetails/WooCommerceCheckoutOrderDetailsController.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/CheckoutOrderDetails/WooCommerceCheckoutOrderDetailsModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/CheckoutPaymentInfo/WooCommerceCheckoutPaymentInfoController.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/CheckoutPaymentInfo/WooCommerceCheckoutPaymentInfoModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/CheckoutShipping/WooCommerceCheckoutShippingController.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/CheckoutShipping/WooCommerceCheckoutShippingModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/CrossSells/WooCommerceCrossSellsController.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/CrossSells/WooCommerceCrossSellsModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductAddToCart/WooCommerceProductAddToCartController.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductAddToCart/WooCommerceProductAddToCartModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductAdditionalInfo/WooCommerceProductAdditionalInfoController.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductAdditionalInfo/WooCommerceProductAdditionalInfoModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductDescription/WooCommerceProductDescriptionController.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductDescription/WooCommerceProductDescriptionModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductGallery/WooCommerceProductGalleryController.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductGallery/WooCommerceProductGalleryModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductImages/WooCommerceProductImagesController.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductImages/WooCommerceProductImagesModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductMeta/WooCommerceProductMetaController.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductMeta/WooCommerceProductMetaModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductPrice/WooCommerceProductPriceController.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductPrice/WooCommerceProductPriceModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductRating/WooCommerceProductRatingController.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductRating/WooCommerceProductRatingModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductReviews/WooCommerceProductReviewsController.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductReviews/WooCommerceProductReviewsModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductStock/WooCommerceProductStockController.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductStock/WooCommerceProductStockModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductTabs/WooCommerceProductTabsController.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductTabs/WooCommerceProductTabsModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductTitle/WooCommerceProductTitleController.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductTitle/WooCommerceProductTitleModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductUpsell/WooCommerceProductUpsellController.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductUpsell/WooCommerceProductUpsellModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/Products/WooCommerceProductsController.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/Products/WooCommerceProductsModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/RelatedProducts/WooCommerceRelatedProductsController.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/RelatedProducts/WooCommerceRelatedProductsModule.php
	* includes/builder-5/server/Packages/ModuleUtils/ChildrenUtils.php
	* includes/builder-5/server/Packages/ModuleUtils/ModuleUtils.php
	* includes/builder-5/server/Packages/ShortcodeModule/Module/Module.php
	* includes/builder-5/server/Packages/ShortcodeModule/Module/ShortcodeModuleBatchController.php
	* includes/builder-5/server/Packages/ShortcodeModule/Module/ShortcodeModuleController.php
	* includes/builder-5/server/Packages/ShortcodeModule/ShortcodeModule.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/Background/Background.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/Background/GradientBackgroundStyleDeclarationTrait.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/Background/Traits/ConstantsTrait.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/Background/Traits/StyleDeclarationTrait.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/Border/Border.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/BoxShadow/BoxShadow.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/Button/Button.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/ButtonIcon/ButtonIcon.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/Declarations.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/Font/Font.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/Icon/Icon.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/Layout/Layout.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/Overflow/Overflow.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/OverlayIcon/OverlayIcon.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/Position/Position.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/Sizing/Sizing.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/Spacing/Spacing.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/Text/Text.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/TextShadow/TextShadow.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/Transform/Transform.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/Transform/TransformHoveredStyleDeclarationTrait.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/Transform/TransformStyleDeclarationTrait.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/Transform/TransformTraits/StyleDeclarationTrait.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/Transition/Transition.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/Transition/TransitionStyleDeclarationTrait.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/Transition/TransitionTraits/StyleDeclarationTrait.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/Transition/TransitionUtils.php
	* includes/builder-5/server/Packages/StyleLibrary/Utils/Utils.php
	* includes/builder-5/server/Packages/WooCommerce/Templates/cart/cart.php
	* includes/builder-5/server/Packages/WooCommerce/Templates/checkout/form-login.php
	* includes/builder-5/server/Packages/WooCommerce/Templates/checkout/payment-method.php
	* includes/builder-5/server/Packages/WooCommerce/Templates/checkout/payment.php
	* includes/builder-5/server/Packages/WooCommerce/Templates/checkout/review-order.php
	* includes/builder-5/server/Packages/WooCommerce/WooCommerceHooks.php
	* includes/builder-5/server/Packages/WooCommerce/WooCommerceUtils.php
	* includes/builder-5/server/Security/AttributeSecurity/AttributeSecurity.php
	* includes/builder-5/server/Security/DynamicContent/DynamicContentFixes.php
	* includes/builder-5/server/Security/HtmlSecurity/HtmlSecurity.php
	* includes/builder-5/server/Security/Security.php
	* includes/builder-5/server/Services/EmailAccountService/EmailAccountService.php
	* includes/builder-5/server/Services/EmailAccountService/EmailAccountServiceAccount.php
	* includes/builder-5/server/Services/EmailAccountService/EmailAccountServiceProvider.php
	* includes/builder-5/server/Services/SpamProtectionService/SpamProtectionService.php
	* includes/builder-5/server/ThemeBuilder/Admin.php
	* includes/builder-5/server/ThemeBuilder/Layout.php
	* includes/builder-5/server/ThemeBuilder/WooCommerce/WooCommerceProductVariablePlaceholder.php
	* includes/builder-5/server/VisualBuilder/AppPreferences/AppPreferences.php
	* includes/builder-5/server/VisualBuilder/Assets/DiviPackageBuild.php
	* includes/builder-5/server/VisualBuilder/Assets/PackageBuildManager.php
	* includes/builder-5/server/VisualBuilder/ClassicEditor/ClassicEditor.php
	* includes/builder-5/server/VisualBuilder/Fonts/FontsUtility.php
	* includes/builder-5/server/VisualBuilder/Hooks/HooksRegistration.php
	* includes/builder-5/server/VisualBuilder/OffCanvas/OffCanvasHooks.php
	* includes/builder-5/server/VisualBuilder/REST/Breakpoint/BreakpointController.php
	* includes/builder-5/server/VisualBuilder/REST/CloudApp/CloudAppController.php
	* includes/builder-5/server/VisualBuilder/REST/ContentConversion/ContentConversionController.php
	* includes/builder-5/server/VisualBuilder/REST/ContentMigration/ContentMigrationController.php
	* includes/builder-5/server/VisualBuilder/REST/CustomFont/CustomFontController.php
	* includes/builder-5/server/VisualBuilder/REST/DiviLibrary/DiviLibraryController.php
	* includes/builder-5/server/VisualBuilder/REST/EmailService/EmailServiceController.php
	* includes/builder-5/server/VisualBuilder/REST/ModuleRender/ModuleRenderController.php
	* includes/builder-5/server/VisualBuilder/REST/Nonce.php
	* includes/builder-5/server/VisualBuilder/REST/Portability/PortabilityController.php
	* includes/builder-5/server/VisualBuilder/REST/RESTRegistration.php
	* includes/builder-5/server/VisualBuilder/REST/SpamProtectionService/SpamProtectionServiceController.php
	* includes/builder-5/server/VisualBuilder/REST/SyncToServer/SyncToServerController.php
	* includes/builder-5/server/VisualBuilder/REST/UpdateDefaultColors/UpdateDefaultColorsController.php
	* includes/builder-5/server/VisualBuilder/Saving/SavingUtility.php
	* includes/builder-5/server/VisualBuilder/SettingsData/SettingsDataCallbacks.php
	* includes/builder-5/server/VisualBuilder/Shortcode/ShortcodeTraits/GetShortcodeTagsTrait.php
	* includes/builder-5/server/VisualBuilder/Shortcode/ShortcodeUtility.php
	* includes/builder-5/server/VisualBuilder/Taxonomies/TaxonomiesUtility.php
	* includes/builder-5/server/VisualBuilder/Taxonomy.php
	* includes/builder-5/server/VisualBuilder/VisualBuilder.php
	* includes/builder-5/server/_all_modules_default_render_attributes.php
	* includes/builder-5/server/_all_modules_metadata.php
	* includes/builder-5/server/composer.json
	* includes/builder-5/server/phpcs.xml
	* includes/builder-5/visual-builder/.eslintignore
	* includes/builder-5/visual-builder/.prettierignore
	* includes/builder-5/visual-builder/.prettierrc.js
	* includes/builder-5/visual-builder/bundle.js
	* includes/builder-5/visual-builder/eslint/common-rules.js
	* includes/builder-5/visual-builder/src/types/wp/taxonomy.ts
	* includes/builder/core.php
	* includes/builder/feature/dynamic-assets/assets/js/slider.js
	* includes/builder/framework-plugin-compat/woocommerce.php
	* includes/builder/frontend-builder/bundle.js
	* includes/builder/frontend-builder/view.php
	* includes/builder/functions.php
	* includes/builder/scripts/frontend/scripts.js
	* includes/builder/scripts/src/builder.js

version 5.0.0-public-beta.5.1 ( updated 12-24-2025 )
- Fixed the builder not loading if the website had only a global Theme Builder footer template applied and nothing else.
- Fixed broken styles on the front end after multiple page loads when the page used an interaction that targeted an element on the same canvas.
- Fixed loop detection, which was incorrectly identifying loops when they didn't exist, leading to unnecessary processing.

version 5.0.0-public-beta.5 ( updated 12-23-2025 )
- Fixed MP4 videos in imported Divi layouts now properly upload to the new site instead of pointing to the old domain.
- Fixed menu module submenu overflow issue where the last menu item's submenu would extend beyond the viewport.
- Fixed pricing table layout and alignment during D4→D5 migration.
- Fixed Icon List Item text styles incorrectly inheriting from Heading Text Option Group Presets by ensuring the module correctly uses the body text preset group instead of the heading preset group.
- Fixed loop dynamic content not rendering in Group modules when loop is enabled. Loop variables now correctly display actual content instead of showing $variable() syntax on the front-end.
- Fixed featured images displaying incorrectly on paginated loop builder pages by ensuring CSS variables are generated fresh for each pagination request instead of using cached static CSS.
- Fixed interactions not working on Theme Builder modules when the same module type is used in multiple Theme Builder areas or regular page content.
- Fixed issue where preset interactions (toggle/add/remove) did not work on Theme Builder templates (header, body, footer) while working correctly on regular pages.
- Added documentation category and introduction page for module.json file structure and configuration.
- Added tutorial documentation for the appearance object in module.json covering module instance limits, aliases, and theme builder layout restrictions.
- Added tutorial documentation for the videos property in module.json, explaining how to configure help videos for modules with examples and best practices.
- Added documentation for the settings parent object in module.json, covering all properties that configure module settings panel organization in the Visual Builder.
- Updated module.json mousetrap documentation to provide clearer explanations and examples for configuring keyboard shortcut behavior in custom modules.
- Fixed Divi Library import breaking nested group preset styles by preserving the correct module name during import preprocessing.
- Fixed True Parallax background images appearing more zoomed in Divi 5.
- Fixed WooCommerce Cart Products module button icons disappearing when custom button styles are enabled without a custom icon configured.
- Fixed icon position shifting in WooCommerce Cart Totals module when Button Custom Style is enabled by using inherit positioning instead of fixed 0.6em offset.
- Fixed Image and Fullwidth Image modules preserving link URL, target, and rel attributes when updating images from the media library.
- Fixed WooCommerce product galleries updating incorrectly when variation changes occurred in different Add To Cart modules on the same page.
- Updated filter hooks to receive module metadata parameter, allowing developers to filter multiple modules using a single general hook by checking module name.
- Fixed component styles appearing broken on frontend after saving pages in Visual Builder on local development environments where filesystem write access is restricted. Styles now automatically fall back to inline output when static CSS file creation fails.
- Fixed text alignment classes not being available on Text module elements after migration from Divi 4 by adding them to custom attributes during conversion, restoring backward compatibility with custom CSS that targets these classes.
- Fixed Customizer heading font styles, incorrectly affecting Media Library and D5 UI elements by properly scoping CSS.
- Fixed Woo Cart Totals module margin-bottom spacing setting not applying when the module is the last child in a column.
- Fixed SVG images in Image Module defaulting to 100% width in frontend when Visual Builder shows auto.
- Fixed Export option in saved layout context menu now respects Role Editor portability permission settings.
- Updated roadmap documentation with latest GitHub and ZenHub issue data.
- Fixed Interaction Builder reset handlers causing unintended field resets when React batches state updates.
- Fixed an issue where Editor role users could not edit posts when a Theme Builder template with Post Content module was active. Visual Builder now correctly identifies the content post being edited and applies appropriate permission checks, allowing Editors to edit posts while maintaining security boundaries for Theme Builder layouts.
- Added workflow documentation for Editor role Visual Builder access fix (issue #47189).
- Fixed CSS Grid "Collapse Empty Column" setting not hiding empty columns when enabled.
- Fixed Group Carousel pagination dots to correctly calculate page count based on both "Slides to show" and "Slides to scroll" settings.
- Fixed Divider Weight field to prevent negative values by enforcing a minimum value of 0.
	* ai-app/ai-app.php
	* ai-app/build/et-ai-app.bundle.css
	* ai-app/build/et-ai-app.bundle.js
	* ai-app/i18n/user-prompt.php
	* cloud/cloud-app.php
	* cloud/i18n/library.php
	* common/admin.php
	* common/constants/colors.js
	* common/controls/field-label/FieldLabel.tsx
	* common/init.php
	* common/lib/ai.js
	* composer.json
	* core/admin/css/core.css
	* core/admin/css/portability.css
	* core/admin/css/support-center.css
	* core/admin/css/wp-admin.css
	* core/admin/fonts/builder.eot
	* core/admin/fonts/builder.svg
	* core/admin/fonts/builder.ttf
	* core/admin/fonts/builder.woff
	* core/admin/fonts/logos/logos.eot
	* core/admin/fonts/logos/logos.svg
	* core/admin/fonts/logos/logos.ttf
	* core/admin/fonts/logos/logos.woff
	* core/admin/fonts/modules/all/modules.eot
	* core/admin/fonts/modules/all/modules.svg
	* core/admin/fonts/modules/all/modules.ttf
	* core/admin/fonts/modules/all/modules.woff
	* core/admin/fonts/modules/base/modules.eot
	* core/admin/fonts/modules/base/modules.svg
	* core/admin/fonts/modules/base/modules.ttf
	* core/admin/fonts/modules/base/modules.woff
	* core/admin/fonts/modules/social/modules.eot
	* core/admin/fonts/modules/social/modules.svg
	* core/admin/fonts/modules/social/modules.ttf
	* core/admin/fonts/modules/social/modules.woff
	* core/admin/images/blurb-vip.jpg
	* core/admin/images/epanel/colorpicker_overlay.png
	* core/admin/images/epanel/colorpicker_select.gif
	* core/admin/images/epanel/custom_background.png
	* core/admin/images/epanel/custom_hex.png
	* core/admin/images/epanel/custom_hsb_b.png
	* core/admin/images/epanel/custom_hsb_h.png
	* core/admin/images/epanel/custom_hsb_s.png
	* core/admin/images/epanel/custom_indic.gif
	* core/admin/images/epanel/custom_rgb_b.png
	* core/admin/images/epanel/custom_rgb_g.png
	* core/admin/images/epanel/custom_rgb_r.png
	* core/admin/images/epanel/custom_submit.png
	* core/admin/images/epanel/postinfo-author.gif
	* core/admin/images/epanel/postinfo-categories.gif
	* core/admin/images/epanel/postinfo-date.gif
	* core/admin/images/epanel/select.png
	* core/admin/images/epanel/select2.png
	* core/admin/js/core.js
	* core/admin/js/portability.js
	* core/admin/js/support-center.js
	* core/code-snippets/CodeSnippetsLibrary.php
	* core/code-snippets/app/boot.js
	* core/code-snippets/app/store/code-snippets-library/actions.js
	* core/code-snippets/code-snippets-app.php
	* core/code-snippets/code-snippets.php
	* core/code-snippets/post/type/CodeSnippet.php
	* core/components/PageResource.php
	* core/components/Portability.php
	* core/components/SupportCenter.php
	* core/components/Updates.php
	* core/components/api/spam/ReCaptcha.php
	* core/components/init.php
	* core/functions.php
	* core/init.php
	* core/json-data/google-fonts.json
	* core/languages/ar.po
	* core/languages/bg_BG.po
	* core/languages/cs_CZ.po
	* core/languages/da_DK.po
	* core/languages/de_DE.po
	* core/languages/el.po
	* core/languages/en_US.po
	* core/languages/es_ES.po
	* core/languages/fi.po
	* core/languages/fr_FR.po
	* core/languages/he_IL.po
	* core/languages/hu_HU.po
	* core/languages/id_ID.po
	* core/languages/it_IT.po
	* core/languages/ja.po
	* core/languages/ko_KR.po
	* core/languages/ms_MY.po
	* core/languages/nb_NO.po
	* core/languages/nl_NL.po
	* core/languages/pl_PL.po
	* core/languages/pt_BR.po
	* core/languages/ro_RO.po
	* core/languages/ru_RU.po
	* core/languages/sk_SK.po
	* core/languages/sr_RS.po
	* core/languages/sv_SE.po
	* core/languages/th.po
	* core/languages/tl.po
	* core/languages/tr_TR.po
	* core/languages/uk.po
	* core/languages/vi.po
	* core/languages/zh_CN.po
	* d5-readiness/server/Conversion.php
	* epanel/core_functions.php
	* epanel/css/panel.css
	* epanel/custom_functions.php
	* epanel/images/active-mainlink-bg.png
	* epanel/images/ad-icon.png
	* epanel/images/ajax-loader.gif
	* epanel/images/box-title-mark.png
	* epanel/images/checkbox-2.gif
	* epanel/images/checkbox.gif
	* epanel/images/colorization-icon.png
	* epanel/images/colorpicker_overlay.png
	* epanel/images/colorpicker_select.gif
	* epanel/images/custom_background.png
	* epanel/images/custom_hex.png
	* epanel/images/custom_hsb_b.png
	* epanel/images/custom_hsb_h.png
	* epanel/images/custom_hsb_s.png
	* epanel/images/custom_indic.gif
	* epanel/images/custom_rgb_b.png
	* epanel/images/custom_rgb_g.png
	* epanel/images/custom_rgb_r.png
	* epanel/images/custom_submit.png
	* epanel/images/defaults-hover.png
	* epanel/images/defaults.png
	* epanel/images/description-bottom.png
	* epanel/images/description-close.png
	* epanel/images/description-main.png
	* epanel/images/description-top.png
	* epanel/images/epanel-bg.png
	* epanel/images/epanel-bottom-bg.png
	* epanel/images/epanel-content-bg.png
	* epanel/images/epanel-content-bottombg.png
	* epanel/images/epanel-content-topbg.png
	* epanel/images/gallery-overlay.png
	* epanel/images/general-icon.png
	* epanel/images/help-image.png
	* epanel/images/integration-icon.png
	* epanel/images/layout-icon.png
	* epanel/images/logo.gif
	* epanel/images/logo.png
	* epanel/images/mainlink-bg.png
	* epanel/images/mainmenu-li-bottom.png
	* epanel/images/navigation-icon.png
	* epanel/images/no.gif
	* epanel/images/panel-top-bg.png
	* epanel/images/postinfo-author.gif
	* epanel/images/postinfo-categories.gif
	* epanel/images/postinfo-comments.gif
	* epanel/images/postinfo-date.gif
	* epanel/images/save.png
	* epanel/images/secondary-active-bg.png
	* epanel/images/secondary-bg.png
	* epanel/images/secondary-li-mark.png
	* epanel/images/select.png
	* epanel/images/select2.png
	* epanel/images/seo-icon.png
	* epanel/images/slider.png
	* epanel/images/support-icon.png
	* epanel/images/top-input-bg.png
	* epanel/images/yes.gif
	* epanel/js/functions-init.js
	* epanel/theme-options-library/ThemeOptionsLibrary.php
	* functions.php
	* includes/builder-5/docs/manual/blog/2025-11-21-release-public-beta-3.mdx
	* includes/builder-5/docs/manual/blog/2025-11-26-release-public-beta-3.1.mdx
	* includes/builder-5/docs/manual/blog/2025-12-04-release-public-beta-4.mdx
	* includes/builder-5/docs/manual/blog/2025-12-08-release-public-beta-4.1.mdx
	* includes/builder-5/docs/manual/blog/2025-12-09-release-public-beta-4.2.mdx
	* includes/builder-5/docs/manual/docs/explanations/module/adapting-to-shortcode-lazy-loading.mdx
	* includes/builder-5/docs/manual/docs/explanations/module/global-color/_category_.json
	* includes/builder-5/docs/manual/docs/explanations/module/module-icon-design-guide.mdx
	* includes/builder-5/docs/manual/docs/explanations/module/module-metadata/_category_.json
	* includes/builder-5/docs/manual/docs/explanations/module/module-metadata/appearance.mdx
	* includes/builder-5/docs/manual/docs/explanations/module/module-metadata/introduction.mdx
	* includes/builder-5/docs/manual/docs/explanations/module/module-metadata/mousetrap.mdx
	* includes/builder-5/docs/manual/docs/explanations/module/module-metadata/settings.mdx
	* includes/builder-5/docs/manual/docs/explanations/module/module-metadata/videos.mdx
	* includes/builder-5/docs/manual/docs/explanations/module/placeholder-content.mdx
	* includes/builder-5/docs/manual/docs/explanations/module/preset/_category_.json
	* includes/builder-5/docs/manual/docs/explanations/module/responsive-content/_category_.json
	* includes/builder-5/docs/manual/docs/tutorials/general/advanced/adding-custom-tabs-to-load-layout-modal.md
	* includes/builder-5/docs/manual/docs/tutorials/general/advanced/assets/custom-layout-tab-preview.png
	* includes/builder-5/docs/manual/docs/tutorials/module/advanced/customize-module-settings-output/adding-custom-panels.mdx
	* includes/builder-5/docs/manual/docs/tutorials/module/advanced/customize-module-settings-output/assets/adding-basic-custom-panels.gif
	* includes/builder-5/docs/manual/docs/tutorials/module/advanced/customize-module-settings-output/introduction.mdx
	* includes/builder-5/docs/manual/docs/tutorials/module/advanced/customize-module-settings-output/modifying-default-attributes.mdx
	* includes/builder-5/docs/manual/docs/tutorials/module/advanced/customize-module-settings-output/syncing-fields-bidirectionally.mdx
	* includes/builder-5/docs/manual/docs/tutorials/module/intermediate/extending-module-settings/adding-custom-panels.mdx
	* includes/builder-5/docs/manual/src/pages/devRoadmapItems.json
	* includes/builder-5/docs/manual/src/pages/roadmapItems.json
	* includes/builder-5/docs/manual/static/json/devRoadmapItems.json
	* includes/builder-5/docs/manual/static/json/roadmapItems.json
	* includes/builder-5/server/Admin/Admin.php
	* includes/builder-5/server/Framework/Portability/PortabilityPost.php
	* includes/builder-5/server/Framework/Utility/StringUtility.php
	* includes/builder-5/server/FrontEnd/Assets/DynamicAssets.php
	* includes/builder-5/server/FrontEnd/Assets/DynamicAssetsUtils.php
	* includes/builder-5/server/FrontEnd/Assets/StaticCSS.php
	* includes/builder-5/server/FrontEnd/BlockParser/BlockParser.php
	* includes/builder-5/server/FrontEnd/BlockParser/BlockParserStore.php
	* includes/builder-5/server/FrontEnd/Module/Style.php
	* includes/builder-5/server/Migration/FlexboxMigration.php
	* includes/builder-5/server/Packages/Conversion/Conversion.php
	* includes/builder-5/server/Packages/Conversion/ValueExpansion.php
	* includes/builder-5/server/Packages/GlobalData/GlobalPreset.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentOptionACFGroups.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentPosts.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicData/DynamicData.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicData/DynamicDataController.php
	* includes/builder-5/server/Packages/Module/Layout/Components/ModuleElements/ModuleElements.php
	* includes/builder-5/server/Packages/Module/Layout/Components/MultiView/MultiViewElement.php
	* includes/builder-5/server/Packages/Module/Module.php
	* includes/builder-5/server/Packages/Module/Options/Element/ElementStyle.php
	* includes/builder-5/server/Packages/Module/Options/Interactions/InteractionsScriptData.php
	* includes/builder-5/server/Packages/Module/Options/Layout/LayoutStyle.php
	* includes/builder-5/server/Packages/Module/Options/Loop/LoopHooks.php
	* includes/builder-5/server/Packages/Module/Options/Loop/LoopUtils.php
	* includes/builder-5/server/Packages/Module/Options/Sticky/StickyUtils.php
	* includes/builder-5/server/Packages/Module/Options/Transform/TransformStyle.php
	* includes/builder-5/server/Packages/ModuleLibrary/Accordion/AccordionModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/AccordionItem/AccordionItemModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Blog/BlogController.php
	* includes/builder-5/server/Packages/ModuleLibrary/Blog/BlogModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/CanvasPortal/CanvasPortalModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/CanvasPortal/CanvasPortalPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/ContactForm/ContactFormHandler.php
	* includes/builder-5/server/Packages/ModuleLibrary/ContactForm/ContactFormModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/ContactForm/ContactFormUtils.php
	* includes/builder-5/server/Packages/ModuleLibrary/Image/ImageModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Image/Styles/Sizing/SizingStyleTraits/StyleDeclarationTrait.php
	* includes/builder-5/server/Packages/ModuleLibrary/Image/Styles/Sizing/SizingStyleTraits/StyleTrait.php
	* includes/builder-5/server/Packages/ModuleLibrary/Map/MapModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Menu/MenuModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/ModuleRegistration.php
	* includes/builder-5/server/Packages/ModuleLibrary/Modules.php
	* includes/builder-5/server/Packages/ModuleLibrary/Portfolio/PortfolioController.php
	* includes/builder-5/server/Packages/ModuleLibrary/Portfolio/PortfolioModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/PostNavigation/PostNavigationModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/PricingTablesItem/PricingTablesItemModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Row/RowModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/RowInner/RowInnerModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Signup/SignupModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/SignupCustomField/SignupCustomFieldModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/TeamMember/TeamMemberModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Text/TextModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Toggle/ToggleModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/CartProducts/WooCommerceCartProductsModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/CartTotals/WooCommerceCartTotalsModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductAddToCart/WooCommerceProductAddToCartModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductImages/WooCommerceProductImagesModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductTabs/WooCommerceProductTabsModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductTitle/WooCommerceProductTitleModule.php
	* includes/builder-5/server/Packages/ModuleUtils/CanvasUtils.php
	* includes/builder-5/server/Packages/ModuleUtils/ModuleUtils.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/Position/Position.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/Transform/TransformTraits/HoveredStyleDeclarationTrait.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/Transform/TransformTraits/StyleDeclarationTrait.php
	* includes/builder-5/server/Packages/StyleLibrary/Utils/Utils.php
	* includes/builder-5/server/Packages/WooCommerce/WooCommerceHooks.php
	* includes/builder-5/server/ThemeBuilder/Admin.php
	* includes/builder-5/server/VisualBuilder/ClassicEditor/ClassicEditor.php
	* includes/builder-5/server/VisualBuilder/Hooks/HooksRegistration.php
	* includes/builder-5/server/VisualBuilder/OffCanvas/OffCanvasHooks.php
	* includes/builder-5/server/VisualBuilder/REST/DiviLibrary/DiviLibraryController.php
	* includes/builder-5/server/VisualBuilder/REST/Portability/PortabilityController.php
	* includes/builder-5/server/VisualBuilder/REST/SyncToServer/SyncToServerController.php
	* includes/builder-5/server/VisualBuilder/Saving/SavingUtility.php
	* includes/builder-5/server/VisualBuilder/SettingsData/SettingsData.php
	* includes/builder-5/server/VisualBuilder/SettingsData/SettingsDataCallbacks.php
	* includes/builder-5/server/VisualBuilder/SettingsData/SettingsDataController.php
	* includes/builder-5/server/_all_modules_conversion_outline.php
	* includes/builder-5/server/_all_modules_default_printed_style_attributes.php
	* includes/builder-5/server/_all_modules_default_render_attributes.php
	* includes/builder-5/server/_all_modules_metadata.php
	* includes/builder-5/server/bootstrap.php
	* includes/builder-5/server/composer.json
	* includes/builder-5/visual-builder/bundle.js
	* includes/builder-5/visual-builder/visual-builder.tsx
	* includes/builder/api/DiviExtension.php
	* includes/builder/api/DiviExtensions.php
	* includes/builder/assets.php
	* includes/builder/autoload-shortcode.php
	* includes/builder/autoload.php
	* includes/builder/class-et-builder-element.php
	* includes/builder/class-et-builder-framework-plugin-compat-loader.php
	* includes/builder/class-et-builder-global-feature-base.php
	* includes/builder/class-et-builder-google-fonts-feature.php
	* includes/builder/class-et-builder-module-features.php
	* includes/builder/class-et-builder-module-order.php
	* includes/builder/class-et-builder-module-shortcode-manager.php
	* includes/builder/class-et-builder-module-use-detection.php
	* includes/builder/class-et-builder-plugin-compat-loader-base.php
	* includes/builder/class-et-builder-plugin-compat-loader.php
	* includes/builder/class-et-builder-post-feature-base.php
	* includes/builder/class-et-builder-post-features.php
	* includes/builder/class-et-builder-settings.php
	* includes/builder/class-et-builder-shortcode-framework-plugin-compat-loader.php
	* includes/builder/class-et-global-settings.php
	* includes/builder/class-et-theme-builder-layout.php
	* includes/builder/compat/woocommerce.php
	* includes/builder/conditions.php
	* includes/builder/constants.php
	* includes/builder/core.php
	* includes/builder/feature/BlockEditorIntegration.php
	* includes/builder/feature/CriticalCSS.php
	* includes/builder/feature/DoNotCachePage.php
	* includes/builder/feature/Library.php
	* includes/builder/feature/SplitLibrary.php
	* includes/builder/feature/content-retriever/retrievers/PageContentRetriever.php
	* includes/builder/feature/display-conditions/DisplayConditions.php
	* includes/builder/feature/dynamic-assets/class-dynamic-assets.php
	* includes/builder/feature/dynamic-assets/dynamic-assets.php
	* includes/builder/feature/dynamic-content.php
	* includes/builder/feature/global-presets/Settings.php
	* includes/builder/feature/gutenberg/EditorTypography.php
	* includes/builder/feature/gutenberg/blocks/Layout.php
	* includes/builder/feature/gutenberg/utils/Conversion.php
	* includes/builder/feature/gutenberg/utils/Editor.php
	* includes/builder/feature/icon-manager/ExtendedFontIcons.php
	* includes/builder/feature/post-content.php
	* includes/builder/feature/woocommerce-modules.php
	* includes/builder/framework-plugin-compat/advanced-custom-fields-pro.php
	* includes/builder/framework-plugin-compat/advanced-custom-fields.php
	* includes/builder/framework-plugin-compat/duplicate-page.php
	* includes/builder/framework-plugin-compat/kk-filterable.php
	* includes/builder/framework-plugin-compat/secure-custom-fields.php
	* includes/builder/framework-plugin-compat/sitepress-multilingual-cms.php
	* includes/builder/framework-plugin-compat/tutor.php
	* includes/builder/framework-plugin-compat/w3-total-cache.php
	* includes/builder/framework-plugin-compat/woocommerce.php
	* includes/builder/framework.php
	* includes/builder/frontend-builder/assets.php
	* includes/builder/frontend-builder/bundle.js
	* includes/builder/frontend-builder/helpers.php
	* includes/builder/frontend-builder/theme-builder/admin.php
	* includes/builder/frontend-builder/theme-builder/api.php
	* includes/builder/frontend-builder/theme-builder/frontend-footer-template.php
	* includes/builder/frontend-builder/theme-builder/frontend-header-template.php
	* includes/builder/frontend-builder/theme-builder/frontend.php
	* includes/builder/frontend-builder/theme-builder/local-library.php
	* includes/builder/frontend-builder/theme-builder/theme-builder.php
	* includes/builder/frontend-builder/view.php
	* includes/builder/functions.php
	* includes/builder/i18n.php
	* includes/builder/languages/en_US.po
	* includes/builder/main-structure-elements.php
	* includes/builder/module/Blurb.php
	* includes/builder/module/Button.php
	* includes/builder/module/CircleCounter.php
	* includes/builder/module/Comments.php
	* includes/builder/module/ContactForm.php
	* includes/builder/module/FilterablePortfolio.php
	* includes/builder/module/Gallery.php
	* includes/builder/module/Image.php
	* includes/builder/module/NumberCounter.php
	* includes/builder/module/Portfolio.php
	* includes/builder/module/PostSlider.php
	* includes/builder/module/PostsNavigation.php
	* includes/builder/module/PricingTablesItem.php
	* includes/builder/module/Signup.php
	* includes/builder/module/Testimonial.php
	* includes/builder/module/field/DisplayConditions.php
	* includes/builder/module/helpers/Background.php
	* includes/builder/module/helpers/MultiViewOptions.php
	* includes/builder/module/helpers/WoocommerceModules.php
	* includes/builder/module/settings/Migration.php
	* includes/builder/module/type/PostContent.php
	* includes/builder/module/woocommerce/CartNotice.php
	* includes/builder/module/woocommerce/CartProducts.php
	* includes/builder/module/woocommerce/CartTotals.php
	* includes/builder/module/woocommerce/CheckoutAdditionalInfo.php
	* includes/builder/module/woocommerce/CheckoutBilling.php
	* includes/builder/module/woocommerce/CheckoutOrderDetails.php
	* includes/builder/module/woocommerce/CheckoutPaymentInfo.php
	* includes/builder/module/woocommerce/CheckoutShipping.php
	* includes/builder/module/woocommerce/CrossSells.php
	* includes/builder/module/woocommerce/Gallery.php
	* includes/builder/module/woocommerce/Rating.php
	* includes/builder/plugin-compat/advanced-custom-fields.php
	* includes/builder/plugin-compat/popup-maker.php
	* includes/builder/plugin-compat/secure-custom-fields.php
	* includes/builder/plugin-compat/sg-cachepress.php
	* includes/builder/post/type/Layout.php
	* includes/builder/scripts/src/bfb_admin_script.js
	* includes/builder/scripts/src/builder.js
	* includes/builder/scripts/src/roles_admin.js
	* includes/builder/shortcode-core.php
	* includes/builder/shortcode-framework.php
	* js/src/theme-scripts-library-base.js

version 5.0.0-public-beta.4.3 ( updated 12-23-2025 )
- Added new canvas system for creating off-canvas menus, popups, and more.
- Fixed audio post formats in Blog module using default browser player instead of MediaElement.js custom player on both frontend and Visual Builder.
- Fixed video overlay play button appearing as escaped HTML text when Blog module displays posts with Video Post Format and Featured Images.
- Fixed Divi Cloud library browser to show both modules and rows when adding nested content inside rows, matching the behavior of local library items.
- Fixed inline text editor not activating when clicking on text within links.
- Fixed default presets being incorrectly assigned and renamed when importing layouts through Divi Library, and ensured imported presets preserve correct metadata.
- Fixed Divi 5 row and inner row modules incorrectly applying overflow: hidden when border radius is set, overriding user-configured overflow settings and causing content clipping. Fixed modules with both position offset and transform settings outputting conflicting CSS declarations, causing position-based transforms to be lost.
- Fixed HTML tags being stripped from Page Settings excerpt field in Visual Builder. Excerpts now preserve valid HTML tags (such as bold, italic, links, and lists) during editing, matching Divi 4 behavior.
- Fixed Circle Counter module preset background color not applying when set at preset level.
- Fixed an issue where custom CSS added to module presets did not appear as placeholder text when editing modules.
- Fixed issue where modules with absolute or fixed positioning and centered alignment options weren't properly centered on the page due to missing transform CSS for position translates.
- Added tutorial documentation for adding custom tabs to the Load Layout modal in Divi 5 Visual Builder, enabling third-party developers to extend the modal with CloudApp context tabs or custom React component tabs.
- Added comprehensive task documentation for Custom Attributes implementation pattern, providing context and actionable recommendations for future development work.
- Add support to automaticly catch Custom Attribute syncing for image elements, enabling 3rd party developers to see a working implementation pattern.
- Fixed Blog module "Current Category" option not filtering posts correctly.
- Fixed global variables in gap options not resolving correctly on frontend when imported via presets, ensuring CSS output uses proper var(--gvid-xxx) format instead of raw variable strings.
- Fixed an issue where importing a page with a Global Row using the Clone Existing Page feature would cause console errors and prevent saving the page.
- Fixed issue where subsequent instances of the same shortcode did not render in Visual Builder preview when multiple identical shortcodes were used in Text/Code modules.
- Fixed Grid Layout "Number of Columns" field incorrectly displaying modified values as placeholder styling and preventing reset functionality.
- Fixed Blog module box-shadow applying to incorrect elements when importing premade layouts.
- Fixed CSS variable validation in Unit Picker by ensuring raw numeric values typed with CSS var unit selected are properly wrapped and validated, preventing invalid values from being saved silently.
- Fixed Person module image size changing when placed inside flex containers with varying text content amounts.
- Fixed critical error when viewing posts containing third-party blocks (like WP Recipe Maker) that don't have block IDs.
- Fixed Social Media Follow child preset backgrounds so they display in Visual Builder.
- Fixed Woo Cart Products module table layout breaking when both product image and remove icon columns are hidden.
- Fixed Contact Form modules in Theme Builder Header, Body, and Footer showing duplicate success messages and sending multiple emails when only one form was submitted.
- Fixed global colors being lost when saving multiple times consecutively in the Visual Builder Manage Global Variables panel.
- Fixed image removal crash by normalizing upload removal output.
- Fixed nested modules within Tab Modules displaying truncated content when text contains dollar signs followed by digits (e.g., $100.50 now displays correctly instead of 0.50).
- Fixed single-item pricing tables not displaying at fullwidth after D4→D5 migration by ensuring flexType is set in the correct attribute location that frontend rendering code reads from.
- Fixed WooCommerce Product Title module displaying "Theme Builder Layout" instead of actual product title when modules render in certain orders within Theme Builder templates.
- Fixed "Manage Global Colors" option now correctly hides in color picker when Variable Manager is disabled in Role Editor.
- Fixed Map module .et_pb_map element height not inheriting custom height values from module settings, causing content clipping when custom heights were set.
- Fixed Build With AI modal not closing when clicking outside the modal content area.
	* ai-app/build/et-ai-app.bundle.css
	* ai-app/build/et-ai-app.bundle.js
	* composer.json
	* core/components/PageResource.php
	* core/components/Portability.php
	* et-pagebuilder/builder-5.php
	* includes/builder-5/docs/manual/blog/2025-11-11-release-public-beta-2.mdx
	* includes/builder-5/docs/manual/blog/2025-11-14-release-public-beta-2.1.mdx
	* includes/builder-5/docs/manual/blog/2025-11-17-release-public-beta-2.2.mdx
	* includes/builder-5/docs/manual/blog/2025-11-21-release-public-beta-3.mdx
	* includes/builder-5/docs/manual/blog/2025-11-26-release-public-beta-3.1.mdx
	* includes/builder-5/docs/manual/docs/explanations/module/global-color/_category_.json
	* includes/builder-5/docs/manual/docs/explanations/module/global-color/assets/resolving-global-color.gif
	* includes/builder-5/docs/manual/docs/explanations/module/global-color/resolving-global-color.mdx
	* includes/builder-5/docs/manual/docs/internal/d5/sprints/2025/2025-24-public-beta-4/00-overview.mdx
	* includes/builder-5/docs/manual/docs/internal/d5/sprints/2025/2025-24-public-beta-4/01-component-crushers.mdx
	* includes/builder-5/docs/manual/docs/internal/d5/sprints/2025/2025-24-public-beta-4/02-kickflip.mdx
	* includes/builder-5/docs/manual/docs/internal/d5/sprints/2025/2025-24-public-beta-4/03-foundation.mdx
	* includes/builder-5/docs/manual/docs/internal/d5/sprints/2025/2025-24-public-beta-4/04-diviboom.mdx
	* includes/builder-5/docs/manual/docs/internal/d5/sprints/2025/2025-24-public-beta-4/07-release.mdx
	* includes/builder-5/docs/manual/docs/internal/d5/sprints/2025/2025-24-public-beta-4/_category_.json
	* includes/builder-5/docs/manual/docs/tutorials/general/advanced/adding-custom-tabs-to-load-layout-modal.md
	* includes/builder-5/docs/manual/docs/tutorials/general/advanced/assets/custom-layout-tab-preview.png
	* includes/builder-5/docs/manual/docs/tutorials/module/advanced/customize-module-settings-output/adding-custom-panels.mdx
	* includes/builder-5/docs/manual/docs/tutorials/module/advanced/customize-module-settings-output/assets/adding-basic-custom-panels.gif
	* includes/builder-5/docs/manual/docs/tutorials/module/advanced/customize-module-settings-output/assets/bidirectional-field-sync-audio.gif
	* includes/builder-5/docs/manual/docs/tutorials/module/advanced/customize-module-settings-output/introduction.mdx
	* includes/builder-5/docs/manual/docs/tutorials/module/advanced/customize-module-settings-output/syncing-fields-bidirectionally.mdx
	* includes/builder-5/docs/manual/docs/tutorials/module/intermediate/extending-module-settings/adding-custom-panels.mdx
	* includes/builder-5/server/Admin/Admin.php
	* includes/builder-5/server/Framework/Portability/PortabilityPost.php
	* includes/builder-5/server/Framework/Utility/ArrayUtility.php
	* includes/builder-5/server/Framework/Utility/StringUtility.php
	* includes/builder-5/server/FrontEnd/Assets/CriticalCSS.php
	* includes/builder-5/server/FrontEnd/Assets/DetectFeature.php
	* includes/builder-5/server/FrontEnd/Assets/DynamicAssets.php
	* includes/builder-5/server/FrontEnd/Assets/DynamicAssetsUtils.php
	* includes/builder-5/server/FrontEnd/Assets/StaticCSS.php
	* includes/builder-5/server/FrontEnd/Assets/StaticCSSElement.php
	* includes/builder-5/server/FrontEnd/BlockParser/BlockParser.php
	* includes/builder-5/server/FrontEnd/BlockParser/BlockParserStore.php
	* includes/builder-5/server/FrontEnd/FrontEnd.php
	* includes/builder-5/server/FrontEnd/Module/Style.php
	* includes/builder-5/server/Migration/AttributePresetMigration.php
	* includes/builder-5/server/Migration/FlexboxMigration.php
	* includes/builder-5/server/Migration/NestedModulePresetMigration.php
	* includes/builder-5/server/Migration/PresetStackMigration.php
	* includes/builder-5/server/Packages/Conversion/Conversion.php
	* includes/builder-5/server/Packages/Conversion/LegacyAttributeNames.php
	* includes/builder-5/server/Packages/Conversion/ValueExpansion.php
	* includes/builder-5/server/Packages/GlobalData/GlobalPreset.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentACFUtils.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentOptionACFGroups.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentOptionLoopPostMetaKey.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentOptionPostCategories.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentOptionPostExcerpt.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentOptionPostMetaKey.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentOptionProductAdditionalInformation.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentOptionProductBreadcrumb.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentOptionProductDescription.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentOptionProductPrice.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentOptionProductReviews.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentOptionProductReviewsCount.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentOptionProductSKU.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentOptionProductShortDescription.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicContent/DynamicContentPosts.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicData/DynamicData.php
	* includes/builder-5/server/Packages/Module/Layout/Components/DynamicData/DynamicDataController.php
	* includes/builder-5/server/Packages/Module/Layout/Components/ModuleElements/ModuleElements.php
	* includes/builder-5/server/Packages/Module/Layout/Components/ModuleElements/ModuleElementsUtils.php
	* includes/builder-5/server/Packages/Module/Layout/Components/MultiView/MultiViewElement.php
	* includes/builder-5/server/Packages/Module/Layout/Components/Style/Utils/UtilsTraits/GetStatementsTrait.php
	* includes/builder-5/server/Packages/Module/Layout/Components/StyleCommon/CommonStyleTraits/StyleTrait.php
	* includes/builder-5/server/Packages/Module/Module.php
	* includes/builder-5/server/Packages/Module/Options/Border/BorderStyle.php
	* includes/builder-5/server/Packages/Module/Options/BoxShadow/BoxShadowStyle.php
	* includes/builder-5/server/Packages/Module/Options/Button/ButtonIconStyle.php
	* includes/builder-5/server/Packages/Module/Options/Button/ButtonStyle.php
	* includes/builder-5/server/Packages/Module/Options/Conditions/ConditionsHooks.php
	* includes/builder-5/server/Packages/Module/Options/Css/CssStyleUtils.php
	* includes/builder-5/server/Packages/Module/Options/Element/ElementFilterFunctions.php
	* includes/builder-5/server/Packages/Module/Options/Element/ElementStyle.php
	* includes/builder-5/server/Packages/Module/Options/Element/ElementStyleAdvancedStyles.php
	* includes/builder-5/server/Packages/Module/Options/Font/FontPresetAttrsMap.php
	* includes/builder-5/server/Packages/Module/Options/Font/FontStyle.php
	* includes/builder-5/server/Packages/Module/Options/Icon/IconPresetAttrsMap.php
	* includes/builder-5/server/Packages/Module/Options/Icon/IconStyle.php
	* includes/builder-5/server/Packages/Module/Options/Interactions/InteractionsScriptData.php
	* includes/builder-5/server/Packages/Module/Options/Layout/LayoutStyle.php
	* includes/builder-5/server/Packages/Module/Options/Loop/LoopHooks.php
	* includes/builder-5/server/Packages/Module/Options/Loop/QueryResults/QueryResultsController.php
	* includes/builder-5/server/Packages/Module/Options/Loop/WooCommerceLoopHandler.php
	* includes/builder-5/server/Packages/Module/Options/Overflow/OverflowStyle.php
	* includes/builder-5/server/Packages/Module/Options/Position/PositionStyle.php
	* includes/builder-5/server/Packages/Module/Options/Sizing/SizingStyle.php
	* includes/builder-5/server/Packages/Module/Options/Spacing/SpacingStyle.php
	* includes/builder-5/server/Packages/Module/Options/Sticky/StickyUtils.php
	* includes/builder-5/server/Packages/Module/Options/Text/TextStyle.php
	* includes/builder-5/server/Packages/Module/Options/TextShadow/TextShadowStyle.php
	* includes/builder-5/server/Packages/Module/Options/Transform/TransformStyle.php
	* includes/builder-5/server/Packages/Module/Options/Transition/TransitionStyle.php
	* includes/builder-5/server/Packages/ModuleLibrary/Accordion/AccordionModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Accordion/AccordionPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/AccordionItem/AccordionItemModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/AccordionItem/AccordionItemPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/Blog/BlogController.php
	* includes/builder-5/server/Packages/ModuleLibrary/Blog/BlogModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Blog/BlogPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/CanvasPortal/CanvasPortalModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/CanvasPortal/CanvasPortalPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/Comments/CommentsPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/ContactField/ContactFieldPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/ContactForm/ContactFormHandler.php
	* includes/builder-5/server/Packages/ModuleLibrary/ContactForm/ContactFormModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/ContactForm/ContactFormPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/ContactForm/ContactFormUtils.php
	* includes/builder-5/server/Packages/ModuleLibrary/Divider/DividerModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/FilterablePortfolio/FilterablePortfolioPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/FullwidthHeader/FullwidthHeaderPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/FullwidthPortfolio/FullwidthPortfolioPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/FullwidthSlider/FullwidthSliderPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/Group/GroupModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Icon/IconPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/IconList/IconListPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/Image/ImageController.php
	* includes/builder-5/server/Packages/ModuleLibrary/Image/ImageModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Image/Styles/Sizing/SizingStyleTraits/StyleDeclarationTrait.php
	* includes/builder-5/server/Packages/ModuleLibrary/Image/Styles/Sizing/SizingStyleTraits/StyleTrait.php
	* includes/builder-5/server/Packages/ModuleLibrary/Login/LoginPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/Map/MapModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/ModuleRegistration.php
	* includes/builder-5/server/Packages/ModuleLibrary/Modules.php
	* includes/builder-5/server/Packages/ModuleLibrary/Portfolio/PortfolioController.php
	* includes/builder-5/server/Packages/ModuleLibrary/Portfolio/PortfolioModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Portfolio/PortfolioPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/PostNavigation/PostNavigationModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/PostNavigation/PostNavigationPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/PostSlider/PostSliderModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Row/RowModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/RowInner/RowInnerModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Search/SearchPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/Signup/SignupModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Signup/SignupPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/SignupCustomField/SignupCustomFieldModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/SignupCustomField/SignupCustomFieldPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/Slide/SlidePresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/Slider/SliderModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Slider/SliderPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/SocialMediaFollow/SocialMediaFollowModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/SocialMediaFollow/SocialMediaFollowPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/Tab/TabPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/Tabs/TabsPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/TeamMember/TeamMemberModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Testimonial/TestimonialModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Testimonial/TestimonialPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/Text/TextModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Text/TextPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/Toggle/ToggleModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/Toggle/TogglePresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/Video/VideoPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/VideoSlider/VideoSliderPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/VideoSliderItem/VideoSliderItemPresetAttrsMap.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/CartProducts/WooCommerceCartProductsModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductAddToCart/WooCommerceProductAddToCartModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductDescription/WooCommerceProductDescriptionModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductGallery/WooCommerceProductGalleryModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductTabs/WooCommerceProductTabsModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductTitle/WooCommerceProductTitleModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/ProductUpsell/WooCommerceProductUpsellModule.php
	* includes/builder-5/server/Packages/ModuleLibrary/WooCommerce/Products/WooCommerceProductsModule.php
	* includes/builder-5/server/Packages/ModuleUtils/CanvasUtils.php
	* includes/builder-5/server/Packages/ModuleUtils/ModuleUtils.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/Filters/Filters.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/Font/Font.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/Position/Position.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/Sizing/Sizing.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/Transform/TransformTraits/HoveredStyleDeclarationTrait.php
	* includes/builder-5/server/Packages/StyleLibrary/Declarations/Transform/TransformTraits/StyleDeclarationTrait.php
	* includes/builder-5/server/Packages/StyleLibrary/Utils/Utils.php
	* includes/builder-5/server/Packages/WooCommerce/Templates/cart/cart-totals.php
	* includes/builder-5/server/Packages/WooCommerce/WooCommerceHooks.php
	* includes/builder-5/server/Packages/WooCommerce/WooCommerceUtils.php
	* includes/builder-5/server/Security/AttributeSecurity/AttributeSecurity.php
	* includes/builder-5/server/Security/Security.php
	* includes/builder-5/server/ThemeBuilder/Admin.php
	* includes/builder-5/server/ThemeBuilder/Layout.php
	* includes/builder-5/server/VisualBuilder/ClassicEditor/ClassicEditor.php
	* includes/builder-5/server/VisualBuilder/Hooks/HooksRegistration.php
	* includes/builder-5/server/VisualBuilder/OffCanvas/OffCanvasHooks.php
	* includes/builder-5/server/VisualBuilder/REST/DiviLibrary/DiviLibraryController.php
	* includes/builder-5/server/VisualBuilder/REST/Portability/PortabilityController.php
	* includes/builder-5/server/VisualBuilder/REST/RESTRegistration.php
	* includes/builder-5/server/VisualBuilder/REST/SyncToServer/SyncToServerController.php
	* includes/builder-5/server/VisualBuilder/Saving/SavingUtility.php
	* includes/builder-5/server/VisualBuilder/SettingsData/SettingsData.php
	* includes/builder-5/server/VisualBuilder/SettingsData/SettingsDataCallbacks.php
	* includes/builder-5/server/VisualBuilder/SettingsData/SettingsDataController.php
	* includes/builder-5/server/VisualBuilder/VisualBuilder.php
	* includes/builder-5/server/_all_modules_conversion_outline.php
	* includes/builder-5/server/_all_modules_default_printed_style_attributes.php
	* includes/builder-5/server/_all_modules_default_render_attributes.php
	* includes/builder-5/server/_all_modules_metadata.php
	* includes/builder-5/server/bootstrap.php
	* includes/builder-5/server/composer.json
	* includes/builder-5/visual-builder/bundle.js
	* includes/builder/class-et-builder-element.php
	* includes/builder/core.php
	* includes/builder/feature/icon-manager/ExtendedFontIcons.php
	* includes/builder/framework-plugin-compat/advanced-custom-fields.php
	* includes/builder/framework-plugin-compat/duplicate-page.php
	* includes/builder/framework-plugin-compat/secure-custom-fields.php
	* includes/builder/frontend-builder/bundle.js
	* includes/builder/frontend-builder/theme-builder/api.php
	* includes/builder/functions.php
	* includes/builder/module/Comments.php
	* includes/builder/module/ContactForm.php
	* includes/builder/module/FullwidthHeader.php
	* includes/builder/module/Login.php
	* includes/builder/module/Signup.php
	* includes/builder/module/field/Divider.php
	* includes/builder/module/helpers/WoocommerceModules.php
	* includes/builder/module/woocommerce/CartProducts.php
	* includes/builder/module/woocommerce/Shop.php
	* includes/builder/plugin-compat/advanced-custom-fields.php
	* includes/builder/plugin-compat/secure-custom-fields.php
	* includes/builder/scripts/src/builder.js
	* js/src/theme-scripts-library-base.js

version 5.0.0-public-beta.4.2 ( updated 12-09-2025 )
- Fixed Dynamic Content Post/Archive Title displaying incorrect date on date-based archive pages.
- Fixed pagination current page number and hover states to use theme accent color instead of hard-coded blue color.
- Fixed Loop Builder layout breaking when adding or deleting posts, custom post types, or pages.
- Fixed Loop Builder layouts breaking when posts are added or deleted by adding cache validation to detect stale query counts and force CSS regeneration.
- Fixed an issue where undo/redo functionality did not work correctly when editing global presets, causing the module to appear reset instead of reverting changes incrementally.
- Fixed global variables and global colors not importing when using Visual Builder's Library Portability feature.
- Fixed Add to Cart buttons in Loop Builder to correctly redirect to each product's own page instead of always redirecting to the template page product.
- Fixed Role Editor button permission not properly hiding button style sub-groups when "Edit Buttons" permission is disabled, especially when custom styles were previously enabled.
- Fixed WooCommerce modules button icon toggle being disabled by default when it should be enabled, ensuring consistent behavior with the regular Button module.
- Fixed WooCommerce Product Images lightbox not closing in Visual Builder by disabling lightbox functionality in builder contexts while preserving slider functionality.
- Fixed unsaved changes warning appearing after saving global elements and reloading Visual Builder. History tracking is now properly re-enabled in all scenarios (synced and local attributes via selective sync), ensuring all edits are tracked correctly.
- Fixed Contact Form and Signup module radio/checkbox/select option links not being preserved during D4 to D5 migration.
- Fixed responsive content flashing on Widescreen and Ultrawide breakpoints.
- Fixed font global variables with spaces in their names not applying when used in modules. Font values are now properly quoted in CSS output to ensure valid CSS parsing.

version 5.0.0-public-beta.4.1 ( updated 12-08-2025 )
- Fixed Email Optin module Field Focus Text Color to apply to typed text in focused input fields, not just field labels.
- Fixed ACF color picker fields not working with Dynamic Content in Visual Builder.
- Fixed Global heading color changes now update Text Module headings immediately in Visual Builder.
- Fixed Extend Attributes feature to prevent source module data loss and ensure composite fields (padding, margin) extend all sub-values correctly.
- Fixed smooth scroll animation always being applied to anchor links on page load even when disabled in Theme Options. Pages loaded with anchor hashes in the URL now respect the Theme Options smooth scroll setting.
- Fixed smooth scroll animation always being applied to anchor links even when disabled in Theme Options. Anchor links now respect the Theme Options smooth scroll setting.
- Fixed image module CSS Grid sizing options not generating CSS when placed inside grid columns.
- Fixed transition duration not working when multiple style components (background, text color, etc.) contribute transitions to the same element. Transition properties from all components are now properly merged instead of being overridden. For the Text module specifically, differentiated selectors prevent conflicts between module and content element transitions.
- Fixed Icon module alignment not applying when set at preset level in Visual Builder.
- Fixed Portfolio module showing current project in its own "Current Category" display.
- Fixed global section background image changes not reverting when Cancel button is clicked.
- Fixed Theme Builder export/import to include global colors, variables, and presets for complete design element portability.
- Fixed global presets, colors, and variables not appearing immediately after importing layouts from Divi Library until page reload.
- Fixed Accordion and Toggle modules crashing when using CSS variables or CSS keywords (inherit, unset) in the icon font size field.
- Fixed Heading module padding-bottom inconsistency between Theme Builder preview and frontend output.
- Fixed background images not visible on tablet/phone breakpoints when parallax is enabled on desktop.
- Fixed empty modal appearing when clicking Add Layout button with both Load Layout and Divi AI permissions disabled by hiding the button when no layout sources are available.
- Fixed Page Settings modal to respect role permission settings for Content, Design, and Advanced tabs, ensuring consistent behavior with Module Settings modal.
- Fixed Text Module not inheriting Desktop value in Responsive Editor for non-desktop breakpoints.
- Fixed Role Editor tab navigation adding "#" to URL and jumping to top of page when switching tabs.
- Fixed an issue where clicking an already active tab in the Role Editor would hide the content panel.
- Fixed Theme Builder template names displaying incorrect font weight when Divi AI option is disabled in Role Editor.
- Fixed an issue where Group Carousel permission couldn't be disabled in Role Editor due to incorrect sanitization of JSON-encoded form data.
- Fixed portability import icon appearing in Load From Library modal when portability permissions are disabled in Role Editor.

version 5.0.0-public-beta.4 ( updated 12-04-2025 )
- Fixed Woo Products module displaying 2 columns on mobile when set to 1 column layout.
- Fixed Row settings icons were cut off in Theme Builder when rows had border radius and overflow hidden applied.
- Fixed incorrect icon positioning in Accordion and AccordionItem modules when using relative units (rem, em, vw, vh, vmin, vmax) for custom icon font size.
- Fixed missing group titles for Conditions, Interactions, and Attributes sections when using the modified filter in module settings, making it easier to identify different sections when viewing filtered results.
- Fixed an issue where preset and Option Group preset styles incorrectly overrode individual element styles in Preview mode when Critical CSS was enabled.
- Fixed flex grow option not working on columns when child modules have Toggle Preset interactions enabled.
- Fixed font dropdown jumping from bottom to correct position when opened in unsnapped module settings modal.
- Fixed ACF Repeater date fields missing date formatting options in Loop Builder.
- Fixed the missing filter saturate property onHover state for the modules in Front-end and Visual Builder.
- Fixed SVG images not resizing correctly on tablet and phone breakpoints in the Image Module.
- Fixed divider module disappearing when alignment options are used in Design > Sizing settings. The divider now remains visible and properly aligned when alignment is set in block, flex, or grid layouts.
- Fixed issue where Image modules became invisible and the add module button disappeared after removing the image, preventing users from adding new modules after empty Image modules.
- Fixed Group Carousel Font Awesome arrow icons not rendering on the frontend by registering the module in the font icon detection system.
- Fixed global variable changes (Global Colors, dynamic content) in Global Modules not syncing across all pages when using the same Global Module on the frontend.
- Fixed sync-worthy detection, propagation, and serialization for subName-level attribute changes in global modules with selective sync by making subName parameter mandatory for editModuleAttribute() action creator.
- Fixed Woo Checkout Billing module Form Notice Background Color field to properly support preset color overrides and global color selections by adding missing dynamic content configuration.
- Fixed Code Module JavaScript operators (like &&) being incorrectly converted to HTML entities on the frontend.
- Fixed Lottie module Trigger Animation setting not respecting breakpoint-specific values when set responsively.
- Fixed Hero Module logo images displaying incorrectly in Visual Builder when small images were used.
- Added filter hook to allow developers to customize CSS cache clearing behavior for programmatically rendered library layouts.
- Fixed Text module preset alignment mismatch between Visual Builder and frontend.
- Added React component support for custom tabs in Load Layout modal, enabling third-party developers to create custom UI beyond CloudApp library patterns while maintaining backward compatibility with existing context-based tabs.
- Fixed Portfolio module "Current Category" option not displaying projects when editing in Visual Builder.
- Fixed issue where changing Layout Style to Grid in element presets removed child items from nested modules (Accordion, Bar Counters, Contact Form, Icon List, Pricing Tables, Slider, Social Media Follow).
- Added tutorial for implementing bidirectional field synchronization in Divi 5 modules with complete working code examples and customization guide.
- Added tutorial documentation explaining how to extract actual color values from global color variables in both frontend and backend contexts for third-party developers building Divi 5 modules.
- Fixed WooCommerce Products module showing blank products when Product Offset exceeds total available products, now displays "No products were found matching your selection" message instead.
- Fixed Preset backup files can now be successfully imported to restore unsaved preset changes.
- Fixed Image Title attributes not being automatically generated in Custom Attributes UI when selecting images from the media library. Title attributes now sync automatically to Custom Attributes, matching the behavior of Alt attributes.
- Fixed shortcode output being wrapped in paragraph tags in Text module by matching D4's processing order.
- Fixed shortcode output being wrapped in paragraph tags in the Text module, ensuring consistent behavior with the Code module while preserving paragraph formatting for regular text content.
- Fixed an issue where newly created global colors were not included in exported layouts when exporting before saving the page.
- Fixed Dynamic Content Post Excerpt not auto-generating text from post content when manual excerpt is empty, matching Divi 4 behavior.
- Fixed Tabs modules with body_orientation attributes now convert properly to D5 format instead of showing legacy compatibility messages.
- Fixed preset styles not applying on frontend when explicitly assigning the default preset in module settings.
- Fixed extra spacing between paragraphs in Text Module content when viewed on frontend in responsive or hover states. The spacing now matches what is shown in the Visual Builder preview.
- Fixed testimonial column layout not working on frontend when using flexType settings.
- Fixed preset values being stored as custom values during premade layout imports, preventing presets from working dynamically after import.
- Fixed a bug where duplicate CSS was generated for presets that were already being generated during early asset generation. This caused the late-generated CSS to override earlier module styles, resulting in broken specific layouts on subsequent page loads.
- Added missing early feature detection for animations and scroll effects, which were causing CSS to either be missing or get generated unnecessarily late.
- Improved performance of CSS grid feature detection in presets.
- Fixed pasted spacing values appearing grayed out in Option Group presets by ensuring they display as custom values (white) instead of default values, matching the behavior in module-level presets.
- Fixed Terms & Conditions page content not rendering Theme Builder templates when displayed in WooCommerce checkout payment module.
- Fixed Gallery module images not importing when using Divi Library import feature.
- Fixed an issue where Testimonial module background patterns and masks were extending outside border radius.
- Fixed D4 layouts imported through VB's Layout Portability now properly migrate to D5 format, preventing backward compatibility messages when used in Theme Builder templates.
- Fixed Icon module alignment not applying when set at preset level in Visual Builder.
- Fixed Image module auto margins interfering with justify-content in flexbox layouts, allowing proper space distribution between flex items.
- Fixed fatal error when importing layouts with legacy font style preset data.
- Fixed gradient background delete button not working in Tablet and Mobile responsive views. The trash icon now properly removes gradients for the current breakpoint when clicked in any responsive view.
- Fixed SCF custom fields now work correctly with Theme Builder dynamic content system.
- Fixed VB pagination module showing encoded HTML entities instead of readable text in post titles.
- Fixed Contact Form module button alignment setting not applying when "Use Custom Styles For Button" is enabled.
- Fixed Contact Form field names not displaying correctly in Visual Builder Elements section. Field names now show their actual values (e.g., "Name", "Email", "Message") instead of generic "Field" labels.
- Fixed WooCommerce Product Title module to display appropriate placeholder text in Theme Builder instead of showing "Theme Builder Layout".
- Fixed missing inline add module button for short WooCommerce modules when module height is very small.
- Fixed various PHP warnings found in the D4 example modules.
- Fixed an issue where adding modules from the Divi Library to Module Groups via the "Add Element" button would remove all existing child modules. Existing modules are now preserved when adding new modules from the library.
- Fixed incorrect default icon placement in WooCommerce Add to Cart module button when "Only Show Icon On Hover For Button" option is disabled.
- Fixed Email Optin module success message being replaced by title text when responsive content is used in the title field.
- Fixed default Option Group presets not applying to newly created modules until Visual Builder reload.
- Fixed WooCommerce Product Description Module custom line-height values not applying to paragraph elements when products are created with the default WordPress editor.
- Fixed an issue where Page Settings modal could still appear for users without page_options permission when Builder Settings → Settings Modal Default Position was set to "Last Used Position".
- Fixed Classic Editor toggle buttons now respect the "Toggle Divi Builder" permission setting in Role Editor, matching Divi 4 behavior.
- Fixed Section module z-index settings not overriding sticky positioning defaults.
- Fixed interaction settings not saving on imported layouts due to type error when comparing primitive attribute values.

version 5.0.0-public-beta.3.1 ( updated 11-26-2025 )
- Fixed text shadow not being removed when set to "None" in Post Slider module and text shadow color changes not reflecting in Visual Builder.
- Fixed scroll effects not working in Theme Builder templates.
- Fixed Divi Library revision restoration redirecting to list page instead of edit screen.
- Fixed Theme Builder option group preset styles overriding individual module styles in footer layouts.
- Fixed background gradients not displaying when global colors were used for gradient stops - gradients now correctly render with global color CSS variables.
- Fixed Map module height in narrow columns after D4 to D5 migration by implementing D4's default value comparison logic.
- Fixed an issue where duplicating Divi 5 posts using the Duplicate Page plugin caused special characters to display incorrectly as Unicode escape sequences instead of rendering properly.
- Fixed grouped option groups remaining open when opening sibling groups. When opening a grouped sub-option group (like Button Border), other grouped siblings (like Button Background) now close automatically to maintain mutual exclusivity.
- Fixed Group Carousel blurb images disappearing after navigating through slides.
- Fixed Contact Form and Contact Field module attribute filtering to work correctly during form submission and validation, allowing third-party developers to override email settings and field validation using the divi_module_library_register_module_attrs hook.
- Fixed SVG images not being imported during portability import with the correct URL.
- Added Loop Product Short Description, Custom Field, and Terms options to Loop Builder for WooCommerce product loops.
- Fixed third-party module conversion failures for attributes ending with _phone or _tablet that are not responsive attributes.
- Fixed an issue where default module attributes (like background colors) were removed from global module instances when unsyncing attributes on other instances of the same global template.
- Fixed an issue where global elements imported from the Divi Library did not reflect recent changes unless the page was reloaded.
- Fixed global elements not synchronizing properly when moving rows with child modules into global sections, ensuring all nested elements inherit the global parent attribute correctly.
- Fixed WooCommerce widget blocks showing "Invalid block" error in WordPress widgets admin panel.
- Fixed Woo Product Upsells module not displaying placeholder images in Theme Builder when no upsell products are assigned.
- Fixed Color Picker modal Global Colors list not being scrollable when many colors are present.
- Fixed an issue where the save button would incorrectly enable when opening module settings for global modules with fields using dynamic content, preventing users from opening other modals or selecting elements until the change was saved or cancelled.
- Fixed Google reCAPTCHA not working correctly in some cases.
- Fixed D5 native content with hover states not generating default CSS transitions between Desktop and Hover styles. Also prioritized custom CSS transitions in mainElement CSS by adding !important when modules have hover states, preventing conflicts between D4 migrated layouts with transition: all and D5's auto-generated transitions.
- Fixed Contact Form submission error when nested modules (Text, Button, Divider) are added to the form.
- Fixed Group Carousel image hover not working on cloned slides after navigating with arrows.
- Fixed an issue where global modules could not be reliably used as interaction targets. Global modules and their children now appear disabled in the interaction target dropdown to prevent selection, providing clear visual feedback to users.
- Fixed parent module custom CSS incorrectly overriding child module custom CSS in the Visual Builder, affecting both Divi core modules and third-party modules.
- Fixed Blog module Meta Text option group preset selector to display Body Text presets instead of Title Text presets.
- Fixed dynamic content background images not updating correctly on product category pages when Woo Products module is present in Theme Builder templates.
- Fixed Heading module responsive content by correcting CSS selector syntax.
- Fixed Divi Carousel Maker columns migrating to D5 blocks by preserving pac_dcm_* attributes only when the carousel is enabled.
- Added the divi.conversion.conditionalPreservationRules filter so third-party extensions can register their own unknown-attribute preservation rules.
- Fixed an issue where disabling and re-enabling the Loop Builder toggle reset dropdown selections (Post Type, Terms, Users) to default values, causing users to lose their configured query settings.

version 5.0.0-public-beta.3 ( updated 11-21-2025 )
- Fixed Resetting breakpoint column structures now properly removes column classes instead of applying default layouts.
- Fixed WooCommerce modules to properly display individual product data when used in Loop Builder product loops by adding "This Loop Product" option to the product selector option.
- Fixed Circle Counter module animation restarting when clicking on other modules.
- Fixed background video sizing in Bar Counter module to display fullwidth, matching Divi 4 behavior and consistent with other modules.
- Fixed border-radius not rendering when using Global Variables with parallax backgrounds or overflow-dependent features across all modules.
- Fixed an issue where global elements imported from the Divi Library did not reflect recent changes unless the page was reloaded.
- Fixed global elements not synchronizing properly when moving rows with child modules into global sections, ensuring all nested elements inherit the global parent attribute correctly.
- Fixed Description Text options not affecting footer text in Email Optin module (restored Divi 4 parity).
- Fixed default Button Option Group presets not applying all styles (background, border, font, spacing, box-shadow) to modules, resolving issue where only button icon rendered while other composite styles were ignored.
- Fixed social media follow item module not respecting custom target attribute when set via Custom Attributes feature.
- Fixed an issue where resetting a single option group's attributes at the preset level or in normal editing mode was resetting all module attributes instead of just the target group's attributes. Also fixed an issue where copying a group's attributes in normal mode was copying all module attributes instead of only the selected group's attributes. Fixed composite groups (like "Text Attributes") to correctly reset all related sub-groups.
- Fixed Background Mask and Pattern settings not appearing at module level when configured in default module presets.
- Fixed Theme Options Custom CSS area to support modern CSS features including clamp(), CSS custom properties, and grid-template-columns.
- Fixed grouped WooCommerce products in Loop Builder to display price ranges instead of single prices, matching the behavior of variable products and WooCommerce admin.
- Fixed Heading module requiring double-click to activate inline text editor, matching D4 behavior and Text module UX.
- Fixed Pricing Table preset-level layout style settings not being applied on the frontend, ensuring child Pricing Table items receive correct layout classes based on parent preset settings.
- Fixed error that occurred when navigating to Animation Settings after deleting transform scale values. Also fixed sync behavior when clearing values in linked mode - the other axis now correctly syncs to its default value instead of becoming zero.
- Fixed Sidebar module Body Text option group preset selector displaying incorrect presets by updating resolver code to check for presetGroup prop in decoration groups, ensuring Body Text presets appear correctly instead of Title Text presets.
- Fixed WooCommerce Product Images module to always display width, max width, and alignment fields in the Design > Sizing panel regardless of the "Force Fullwidth" toggle state.
- Fixed fatal error when exporting Divi Library items that contain modules with Option Group presets.
- Fixed scroll effects not working on the frontend when presets were empty or didn't contain scroll effects.
- Fixed Global Variables custom order resetting to creation order when a variable is deleted. Custom order is now preserved when deleting variables.
- Fixed issue where global colors and variables used in module and group presets were not included when exporting layouts from the Divi Library.
- Fixed global colors used in group presets not being exported when exporting layouts from Visual Builder.
- The base colors of relative global colors will now be extracted and exported along with the relative color based on it.
- Group presets nested inside module presets should now import/export correctly.
- Module presets that have no attributes modified, but have nested group preset attributes, will no longer be skipped as "empty" when exporting.
- Global color labels will get imported/exported correctly now.
- Fixed various bugs regarding variable importing in the Divi Library.
- Fixed Loop Builder component styles not displaying on loop items after the first iteration in frontend rendering.
- Fixed Icon module filling full width of container by default when background colors or borders are applied.
- Fixed module presets and global variables being lost when exporting Divi 5 layouts via the WordPress Admin Divi Library export interface.
- Added task documentation for issue #46853 Divi Library preset export fix.

version 5.0.0-public-beta.2.2 ( updated 11-17-2025 )
- Fixed global sections being converted to regular sections when cloning existing pages via the Divi Library.
- Fixed Product Reviews module form field margins not being applied correctly.
- Fixed reset column structure option not appearing on tablet and mobile breakpoints.
- Fixed Group Carousel background images not displaying on Custom Post Type pages in Theme Builder.
- Fixed automatic excerpt generation for posts created with Divi Builder in Loop modules.
- Improved WooCommerce module performance through static caching, database optimization, and enhanced security validation.
- Fixed interactions within Loop Builder only working for the first looped item by correcting the variable name that adds loop item identifiers to the DOM, enabling proper trigger-to-target matching for all loop items.
- Improved image attribute migration to work automatically for third-party plugin modules.
- Fixed legacy attribute filter to automatically handle responsive and state suffixes during D4 to D5 conversion, allowing plugin developers to register only base attribute names instead of all suffix variations.
- Fixed background image custom size settings not applying responsively on different devices, ensuring desktop, tablet, and mobile values display correctly on the frontend.
- Updated help and reset icons in AI app field labels to match Divi 5's modern icon design for visual consistency.
- Fixed white gaps appearing between Blurb module images and their borders when border-radius styling was applied.
- Fixed white gaps at rounded image borders by resetting the image border radius when the parent has a radius.
- Added Post Keyword Manager example to demonstrate et.builder.content.change hook integration for third-party plugin developers.
- Fixed Woo Checkout Billing and Shipping module field styles not rendering in Theme Builder Visual Builder.
- Fixed an issue where the Blurb module's Content Width setting would not apply on the frontend when the Horizontal Gap was changed from its default value.
- Fixed VB context layout imports and inconsistent display of imported layouts in Visual Builder library by normalizing data structures and improving cache invalidation.
- Added Horizontal and Vertical Gap spacing controls to WooCommerce Product Gallery module when using Grid layout, matching the spacing control capabilities of the standard Gallery module.
- Fixed Global Variables image preview checkerboard pattern not displaying for white or transparent images, making them difficult to see in the upload modal.
- Fixed Tabs module JavaScript errors when CSS ID attribute was set that prevented tabs from functioning properly.
- Added custom tabs extension API for Load Layout modal, allowing third-party developers to register custom tabs with CloudApp contexts.
- Fixed Pricing Tables and Pricing Table item modules to display the default border color (#BEBEBE) in settings panel fields instead of showing empty color pickers.
- Fixed background image preview in module settings panels showing white when using Global Colors or Nested Global Colors in gradient stops.
- Fixed Grid Layout Number of Columns field not reading preset values correctly and fixed frontend grid layout not rendering when using grid layout via presets.
- Fixed Group Carousel Design Tab > Group styles incorrectly affecting nested groups within carousel slides by updating the selector to target only direct child groups.
- Fixed incorrect content duplication when adding modules after global module instances.
- Fixed accordion module duplication to always show the first item open when duplicating the entire module, regardless of which item was open in the original.
- Fixed Accordion module items not automatically opening when removing an open item, ensuring at least one accordion item always remains visible to users.
- Fixed sync icon misalignment in Add Element group options for modules with child elements (Gallery, Counters, etc.) when displayed in modal settings.
- Fixed section dividers not displaying correctly when using Global Colors for section backgrounds. Dividers now properly inherit colors from adjacent sections in both Visual Builder and Frontend.
- Fixed issue where "Use The Divi Builder" button didn't appear when creating new Posts with Classic Editor enabled until the post was saved first.
- Fixed contact form radio and select fields returning invalid error when option values are long by ensuring options array uses the same sanitization as submitted values.
- Added comprehensive tutorial documentation explaining how to handle unknown attributes during Divi 4 to Divi 5 module conversion, including guidance on when to use module-specific deprecatedMap versus the global legacyAttributeNames filter.
- Fixed global colors not resolving correctly in the visual builder.
- Fixed not being able to edit newly-created default group presets when they were first created.

version 5.0.0-public-beta.2.1 ( updated 11-14-2025 )
- Fixed Comments module in Theme Builder showing and submitting comments for the Theme Builder layout post instead of the actual displayed post/page.
- Fixed an issue where the comment module is not getting correct comments in Theme Builder Layout.
- Fixed section backgrounds with Global Colors disappearing in Visual Builder when dividers were enabled and adjacent sections also used Global Colors.
- Fixed section divider colors from presets not displaying correctly in the Visual Builder.
- Fixed button styling in Woo Cart Totals Module not appearing when editing Theme Builder templates by ensuring all button selectors support both regular page and Theme Builder contexts.
- Fixed WooCommerce Product Gallery pagination where Next/Previous buttons advanced by 2 pages instead of 1 due to duplicate event handler attachments.
- Fixed undo requiring two steps instead of one when duplicating, removing, moving, or copying global module instances by preventing duplicate history entries from synchronization actions.
- Fixed global module structural changes (add, delete, move) not synchronizing across instances when instances are inserted from the library multiple times.
- Fixed modules with default background colors (CTA, Audio, Slide) not allowing background removal in Visual Builder when clearing the color field.
- Fixed checkbox and radio button field values with trailing spaces being trimmed on the frontend, causing text to merge with adjacent links.
- Fixed Pricing Tables preset layout settings (Grid/Flex) not displaying as defaults at the static level after exiting preset editing mode.
- Fixed Toggle module requiring multiple clicks to close in Visual Builder by adding 100ms delay to state updates, allowing jQuery animations to complete without race conditions.
- Updated developer and Divi roadmaps  with latest GitHub issues data.

version 5.0.0-public-beta.2 ( updated 11-11-2025 )
- Added the option to stack multiple presets on any element or group.
- Added the option to nested group presets inside element presets.
- Fixed animations and scroll effects not working on the front end when configured within a preset and not at the element level.
- Fixed Custom CSS and Free-Form CSS fields showing false error warnings when using modern CSS properties.
- Fixed Social Media Follow module custom icon size not appearing in hover mode.
- Fixed progress bar positioning to appear centered when importing code snippets from library in Visual Builder.
- Fixed Offset Origin field defaults for absolute and fixed positioning to display 'top left' as expected.
- Fixed Post Content modules being incorrectly allowed to save to Divi Library and Divi Cloud in Theme Builder.
- Fixed Post Content module settings not opening when clicking on content areas in Visual Builder.
- Fixed third-party shortcodes (RankMath breadcrumbs, WooCommerce, etc.) showing Theme Builder layout data instead of actual post data when used in Theme Builder templates.
- Fixed responsive custom size values for background patterns not applying correctly in Visual Builder.
- Fixed code field content losing target attributes during D4 to D5 conversion in third-party modules.
- Fixed Visual Builder displaying erased content after running Divi 5 Migrator on posts with placeholder-wrapped but unconverted D4 shortcodes.
- Fixed Post Title modules and Dynamic Content fields inside Blog module excerpts showing "Results for [keyword]" instead of actual post titles on Search Results Theme Builder templates.
- Fixed Text Module line-height calculation to use the module's font-size instead of the body's font-size when font-size is changed but line-height is left at default.
- Fixed scroll effects not working on Custom Post Type pages in Visual Builder and Frontend.
- Fixed scroll effects not working on frontend by aligning loading architecture with sticky effects pattern.
- Fixed select dropdown scrollbars closing the dropdown when clicked, affecting Font-Family, Divider Styles, Loop Meta Key, and all other select dropdowns with scrollable options.
- Fixed Filterable Portfolio grid layout when using Block display type setting.
- Fixed accordion items inheriting open state when duplicated in Visual Builder, ensuring only one accordion item remains open at a time.
- Fixed the Woo Notice module to display the default primary color in the Background Color settings, matching the visual display in the Visual Builder.
- Added mobile swipe gesture support to Group Carousel module for intuitive touch navigation on mobile devices.
- Fixed missing section divider hover animations by ensuring smooth transitions for height, background-size, and background-image properties across all divider styles.
- Fixed section divider hover transitions to provide smooth animations between desktop and hover styles in the Visual Builder.
- Fixed responsive content shortcodes not rendering properly on tablet and mobile breakpoints.
- Fixed WooCommerce Product Gallery Grid mode displaying all images at full-width instead of 4 images per row by removing conflicting float-based layout classes that interfered with CSS Grid functionality.
- Fixed WooCommerce Product Gallery lightbox not displaying image titles in Slider mode.
- Fixed Group Carousel module arrows and dots not respecting responsive visibility settings on tablet and mobile devices.
- Fixed flex/grid rows and columns added inside global sections not being recognized as global elements, causing synchronization issues across global instances.
- Fixed module conversion outlines by removing redundant spacing transformation entries that were not needed for proper D4 to D5 attribute conversion.
- Fixed WooCommerce Add to Cart module button icon hover states to properly handle enable and onHover conditions.
- Fixed Visual Builder background gradient overlay not appearing on tablet and phone breakpoints when "Place Gradient Above Background Image" option is enabled.
- Added Code Module shortcode rendering in Visual Builder preview - WooCommerce and other shortcodes now display in VB as they did in Divi 4.
- Fixed responsive Horizontal and Vertical Gutter Width controls for WooCommerce Cart Products, Cart Totals, and Checkout Order Details modules in both Visual Builder and Frontend.
- Fixed the issue where the 'False Unsaved Changes 'modal appeared on all Divi 4 pages that were migrated to Divi 5 in VB.
- Fixed Order controls not appearing for modules inside columns using Grid layout, allowing element reordering in CSS Grid containers.
- Fixed Gallery module slider layout pagination toggle not hiding pagination dots when "Show Pagination" is disabled.
- Fixed Custom Attributes dynamic content system where clicking "Custom Fields" or other options requiring settings did not open the configuration modal, and attribute titles now display resolved dynamic content values instead of raw syntax.
- Fixed featured image size being smaller after D4 to D5 migration in Theme Builder templates.
- Fixed undo requiring two steps instead of one when duplicating, removing, moving, or copying global module instances by preventing duplicate history entries from synchronization actions.
- Fixed module settings modal footer buttons overlapping content in global module settings, ensuring all options remain accessible and visible.
- Fixed column structure changes in global modules to properly synchronize to template and propagate to all instances, and correctly enable the Save button when changed from module settings while maintaining auto-sync behavior when changed from module options.
- Fixed duplicate extension initialization errors during Divi 4 to Divi 5 Visual Builder migration by preventing multiple initialization attempts when compatibility hooks fire.
- Fixed an issue where exporting Theme Builder templates containing multi-line custom CSS would cause module data to be removed during the import process.
- Fixed duplicate content on single product pages when Theme Builder templates contain WooCommerce modules.
- Fixed an issue where 3rd party plugins rendering Divi Library items would generate duplicate CSS classes.
- Fixed Individual WooCommerce product pages now load properly in Divi Visual Builder when theme builder templates are active.
- Fixed a PHP fatal error that occurred when opening the Visual Builder on sites with null custom field meta keys.
- Fixed global variables not applying to spacing fields in nested option groups (Button, Field, and WooCommerce module option groups).
- Fixed incorrect URLs in WooCommerce My Account pages when using Theme Builder custom templates.
- Fixed compatibility mode warnings that incorrectly appeared when importing layouts containing legacy Slider, Tabs, and Fullwidth Header modules.
- Fixed global structural modules (sections, rows, columns) from Divi 4 not converting to global modules in Divi 5, particularly affecting Theme Builder layouts.
- Optimized D5 Readiness database queries to reduce memory usage and improve performance on D5 Migrator page.
- Fixed a fatal error that could occur on the frontend when responsive breakpoints (tablet or phone) were disabled.
- Fixed PHP deprecation warnings in WooCommerce 10.3.0+ by using new namespaced script handles (wc-select2, wc-zoom, wc-flexslider, wc-photoswipe-ui-default) while maintaining backward compatibility with earlier WooCommerce versions.
- Fixed Theme Builder templates not loading on Tutor LMS Order confirmation pages.
- Fixed fatal error when using Mercado Pago payments for WooCommerce plugin with Woo Notice module on product pages.
- Fixed WooCommerce Product Title and Cart Notice modules custom CSS fields generating malformed selectors with literal {selector} text.
- Fixed Pricing Table module price text border settings displaying 0px when 1px border was visible by default.
- Fixed Blurb module image overlapping content when using percentage-based width values with left or right icon/image placement.
- Fixed an issue where previously uploaded JSON files for Lottie animations were not visible in the Visual Builder's media library, preventing users from reusing uploaded animation files.
- Fixed global color chip tooltips to display actual color values (e.g., #ff0000) instead of technical CSS variable syntax (e.g., var(--gcid-xxx)).
- Fixed WooCommerce checkout error messages appearing multiple times instead of once.
- Fixed Loop Builder showing "No Results Found" after importing layouts with deleted taxonomy terms by validating term existence in both frontend and Visual Builder query building.
- Fixed back arrow icon misalignment in global module modals when editing modules. The arrow icon now properly aligns vertically with the module title text.
- Fixed an issue where Gallery modules set to Slider layout in D4 were incorrectly migrated to Grid layout in D5, causing the loss of slider functionality.
- Fixed an issue where Loop Builder post term links and excerpt read more links displayed as HTML markup instead of clickable links in the Visual Builder.
- Fixed native WordPress lazy loading not being applied to images in Theme Builder layouts.
- Fixed an issue where WooCommerce Product Gallery displayed images stacked vertically instead of in a grid layout when Layout was set to "Grid".
- Fixed spacing sync button not highlighting on first click and incorrectly toggling when using global variables in margin/padding fields.
- Fixed sticky elements not working on the frontend due to JavaScript error when using responsive offset settings.
- Updated developer roadmap documentation with latest GitHub issues data (405 items from dev board).
- Fixed Visual Builder load failures on large databases by optimizing Dynamic Content meta key queries, significantly reducing execution time.

version 5.0.0-public-beta.1.2 ( updated 10-28-2025 )
- Fixed third-party shortcodes (Toolset Views, WooCommerce, Gallery, etc.) being corrupted during save operations in Divi 5 Visual Builder by preventing Divi-specific migration logic from processing non-Divi shortcodes.
- Fixed SVG images without explicit width/height attributes not displaying in Blurb modules.
- Fixed Section horizontal overflow setting not working in Visual Builder to match Frontend behavior.
- Fixed "Grab the first post image" theme option not working in Blog module after migrating to D5.
- Fixed issue where global modules duplicated their content on the frontend when viewed after being saved to the Divi Library.
- Fixed an issue where wireframe mode flex columns displaying stacked instead of side-by-side.
- Excluded node_modules of divi-4 directory from the zip command to reduce package size.
- Fixed broken Custom CSS caused by unwanted semicolons added to CSS output.

version 5.0.0-public-beta.1.1 ( updated 10-27-2025 )
- Added Windows compatibility notes to module conversion tutorials to help Windows users resolve NODE_ENV error when running npm build commands.
- Resolved an issue where users couldn't access module settings when clicking on accordion items in the Visual Builder.
- Fixed Contact Form checkbox validation failing when checkbox labels contain commas or other special characters.
- Fixed the Blog module's paginated grid layout breaking on the frontend when a parallax section was used above the module.
- Fixed Text Module inline editor toolbar not closing properly when clicking outside after opening Text Settings, Link input, or Color picker.
- Fixed global elements (sections, rows, modules) losing their global status when imported from the Divi Library into Theme Builder templates.
- Fixed Block layout presets not updating row structure when applied through Presets breaking Wireframe mode layout.
- Fixed support for third-party modules to retrieve default attribute values.
- Fixed fatal error "Call to undefined function et_builder_wc_render_module_template()" when WooCommerce modules are rendered in REST API contexts, particularly affecting integrations like the Sendcloud shipping plugin.
- Fixed box shadow color settings incorrectly remaining visible in the Inspector panel after disabling the box shadow feature.
- Fixed Button module background position not migrating correctly from Divi 4 to Divi 5.
- Added support for custom panel to use custom settings file. Added comprehensive tutorial documentation for advanced custom settings file implementation.
- Fixed Divi 5 row and inner row modules incorrectly applying overflow: hidden when border radius is set, overriding user-configured overflow settings and causing content clipping. Fixed modules with both position offset and transform settings outputting conflicting CSS declarations, causing position-based transforms to be lost.
- Fixed an issue where Portfolio, Filterable Portfolio, and Gallery modules lost their grid layout after migrating from Divi 4 to Divi 5, causing items to display stacked vertically instead of in a responsive grid in the Visual Builder.
- Fixed pricing table column sizing changing during Divi 4 to Divi 5 conversion.
- Fixed button module alignment settings not working when a flex button was placed in a block container.
- Fixed theme customizer max width not working on rows due to CSS specificity.
- Fixed horizontal gap setting not working on icon list items.
- Fixed centered menu with logo on top moving to one line due to new flex direction row settings.
- Fixed blog box shadow applying to the blog wrapper instead of the blog items.
- Fixed a migration issue that was setting fullwidth blogs to grid mode.
- Fixed an issue where the border set for the blog while in grid mode was not rendering correctly.
- Fixed missing Add From Library tab when adding new rows.
- Fixed not being able to add nested rows when the parent container was set to block.
- Fixed responsive flex column structures built after public beta 0 not working correctly due to incorrect attribute detection.
- Fixed position options not working on rows due to increased CSS specificity on the base row position styles.
- Fixed apply responsive grid templates would reset the desktop grid template.
- Fixed filterable portfolio grid structure breaking down with clicking on different filters.
- Added migration for the post carousel module to map legacy settings to the new native grid layout attributes.
- Fixed missing spacing between social follow items when in block mode.

version 5.0.0-public-beta.1 ( updated 10-24-2025 )
- Introduced Nested Modules.
- Fixed elements crashing when using the inspector, if the elements had unused/disabled loop attributes.
- Fixed missing background images on responsive breakpoints when a unique background gradient was added for a breakpoint on top of an inherited background image.
- Simplified button icon styling.
- Improved layers panel styling.
- Added Layout options to all modules.
- Added Column Size options to all modules.
- Deprecated duplicate layout options in grid-based modules such as the blog and portfolio modules.
- Deprecated duplicate flex direction settings in the email opt-in module.
- Fixed some hover button alignment issues.
- Added new "Add Inside" option to the Add Element menu when right clicking.
- Added new Paste Above/Below/Inside options on right click.
- Added the ability to drag and drop elements inside other elements.
- Fixed drop zone indicator position and size when dropping modules into grid elements and flex elements set to row or row reverse.
- Added hover UI to child modules, such as accordion items and bar counter items.
- Fixed an issue where Editor role users could not load the D5 Visual Builder when a Theme Builder template with Post Content module was active.
- Added comprehensive tutorial for third-party developers on properly modifying Divi's Dynamic Assets list to load custom CSS and JavaScript files when needed by third-party modules.
- Fixed Theme Builder export/import functionality for layouts containing CSS with newlines - spacing values, custom CSS, and other module attributes now import correctly.
- Fixed an issue where explicit background colors in specialty section columns were incorrectly converted to global colors during D4 to D5 migration, overriding user's intentional color choices.
- Fixed an issue where column widths were not rendering correctly on the first page load after migrating Divi 4 layouts to Divi 5.
- Fixed touch device compatibility for all draggable components including spinners, transform controls, and modal resizers.
- Fixed numeric input fields not saving values when clicking on other modules during typing in the Visual Builder.
- Added tutorial for creating custom panels in Divi 5 module settings, including step-by-step instructions and working examples for third-party developers.
- Added server-side action hook for third-party plugins to detect Divi 5 layout saves with comprehensive context.
- Fixed Divi 4 extension modules displaying JavaScript code instead of rendering properly in Visual Builder. Restructured build system for improved developer experience with streamlined commands and clean directory structure.
- Fixed missing websafe fallback fonts in font-family CSS declarations causing visual differences between Divi 4 and Divi 5.
- Updated the way to filter module conversion outline on conversion module tutorial page.
- Fixed WooCommerce Product Tabs module generating console error when clicked in Visual Builder with default product value.
- Fixed Loop Comment Count not displaying in Visual Builder due to incorrect data mapping key.
- Fixed fatal error during Divi 5 migration for WooCommerce Product Tabs modules.
- Fixed PHP notices when editing Divi Library items by ensuring the et_pb_layout post type is registered during WordPress AJAX actions that require capability checks.
- Added comprehensive documentation for third-party module conversion outline requirements, clarifying that JSON files are mandatory for Divi 4 to Divi 5 module conversion with step-by-step instructions for both direct JSON creation and webpack plugin automation.
- Fixed Bar Counters module not being recognized in Divi 5 and triggering backward compatibility mode during migration.
- Fixed custom CSS without trailing semicolons corrupting adjacent CSS properties during Divi 5 migration and rendering.
- Fixed Menu module SVG logos not appearing after D4→D5 migration when using dynamic content, and resolved layout breaking when manually reselecting SVG logos.
- Fixed responsive sticky functionality where explicit breakpoint values (like setting tablet to "none") were not being respected, ensuring sticky elements behave correctly across all device sizes.
- Fixed Responsive Editor Modal incorrectly allowing docking to sidebars which caused errors and broke modal functionality.
- Fixed importing layouts containing global module instances exported from Public Beta 1, ensuring all global modules convert to regular modules on import while maintaining backward compatibility with previous export formats.
- Fixed performance issue where D5 Readiness queries were running on every admin page load.
- Fixed PHP 8.4 compatibility warnings that could appear when using customizable breakpoints
- Fixed Animation Intensity fields not displaying available Number global variables in the dynamic content selection dropdown
- Fixed Divi 5 to Divi 5 migrations not processing option group presets during layout import.

version 5.0.0-public-beta ( updated 10-17-2025 )
- Custom attributes added to presets will now merge with custom attributes set at the module level, instead of being overwritten by module-level attributes.
- When switching between modules, the settings panel will keep the active tab and option group open.
- Added a select menu to select from commonly used attributes in the attributes option group.
- Fixed carousel group buttons overlapping the add module button.
- When clicking on the layers in the layers panel, the canvas will no longer scroll to the element's position if the element is already visible in the viewport.
- Improved the speed of adding new modules to large pages by over 50%.
- Added new arrow key keyboard shortcuts for navigating between elements on the canvas.
- Fixed Blurb module icon placement styles not matching Divi 4 output after migration to Divi 5.
- Fixed font style resets not overriding preset styles after migrating from Divi 4 to Divi 5.
- Fixed an issue where the Menu module's mobile dropdown menu background colors disappeared after migrating Divi 4 layouts to Divi 5.
- Fixed global sections, rows, and modules not importing correctly when exporting and importing layouts between sites.
- Added Global Modules with Selective Sync feature, enabling automatic synchronization of reusable modules across the site while allowing per-instance customization of specific attributes. Included seamless conversion of Divi 4 global modules with preserved selective sync configurations.
- Fixed fatal error that prevented Block Editor from loading when editing pages using backwards compatibility mode Theme Builder layouts.
- Fixed ValueExpansionFunctionMap callbacks not triggering for third-party modules when shortcode attributes contained line breaks.
- Fixed Button module hover background colors not overriding preset values when set to match desktop background colors.
- Fixed migrated Divi 4 layouts incorrectly receiving automatic hover/sticky transitions when no explicit transition settings were configured in the original layout.
- Fixed button icon hover animation direction in migrated D4 layouts to properly animate left-to-right instead of right-to-left, and restored proper icon spacing for custom icons.
- Fixed Image module absolute positioning to allow intentional overflow widths when user explicitly sets width value, while preserving default max-width constraint for standard absolute positioned images.
- Fixed special characters like copyright symbols (©) displaying as corrupted text (u00a9) after migrating from Divi 4 to Divi 5.
- Fixed D4 to D5 migration not preserving overflow-x and overflow-y attribute values, causing unexpected horizontal scrollbars on migrated layouts.
- Fixed Pricing Table module width and layout issues when migrating D4 content to D5 or importing D4 layouts from Divi Library.
- Fixed Blog module migration issue where "Posts For Current Page" setting was incorrectly set to disabled after migrating from Divi 4 to Divi 5.
- Fixed Post Title module text colors incorrectly inverting during Divi 4 to Divi 5 migration.
- Fixed Blog module box shadow applying to incorrect elements after D4 to D5 migration by adding conditional selector logic that targets module wrapper for fullwidth layouts and individual posts for grid layouts.
- Fixed background blend modes (difference, multiply, screen, etc.) not rendering correctly after migrating D4 layouts to D5 when background color is not explicitly set.
- Fixed WooCommerce Product Gallery grid layout to properly adapt to parent column widths like Divi 4, resolving images stacking vertically in narrow containers.
- Fixed specialty section column rendering in backward compatibility mode.
- Fixed Call To Action module button background color not displaying in Theme Builder and resolved double-prefixing issue.
- Fixed an issue where setting an opacity value in the color picker and then entering a CSS variable would remove the opacity value when pressing Enter.
- Updated Divi 5 to use a separate translation text domain (et_builder_5) to ensure proper localization without conflicts with Divi 4 translations.
- Updated .po files to include Divi 5's newly introduced translatable strings.
- Added command to update localization for D5 on Divi Buld process action.
- Fixed incorrect element positioning on tablet and phone breakpoints when changing from centered absolute positioning to non-centered relative positioning.
- Fixed incorrect element positioning when changing Position and Offset Origin settings between responsive breakpoints.
- Fixed background image position and horizontal/vertical offset not working for custom breakpoints (UltraWide, WideScreen, TabletWide, PhoneWide) in both Visual Builder and Frontend.
- Fixed Divi 4 to Divi 5 migration not preserving sticky settings for child modules that are placed inside sticky Sections.
- Fixed FontAwesome icons not displaying correctly as arrow icons in Group Carousel modules.
- Fixed Shortcode module appearing instead of standard section when creating new pages in VB.
- Fixed Button modules and other Divi modules failing to migrate from Divi 4 to Divi 5 when third-party plugin attributes were present by adding extensibility filter for plugin developers to register legacy attributes.
- Fixed Button Module and custom attributes outputting empty HTML attributes that should be omitted for cleaner, more accessible markup.
- Fixed Option Group Presets not being imported during JSON layout import in Divi 5.
- Fixed CSS clamp, min, and max functions to accept values without spaces after commas and automatically format spacing for consistency.
- Fixed intermittent WooCommerce test failures by introducing specialized base classes that properly isolate REST context and session state between tests.
- Fixed WooCommerce Checkout Additional Info Module placeholder text color not applying in Visual Builder and Frontend.
- Fixed WooCommerce Checkout Information module margin and padding settings not applying in Visual Builder due to missing CSS generation configuration.
- Fixed WooCommerce Checkout Payment Info module background video not covering the entire module on the frontend.
- Fixed WooCommerce Checkout Payment Info module margin values applying inside the module container instead of outside.
- Fixed WooCommerce Checkout Payment Info module missing default padding (Divi 4 parity).
- Fixed WooCommerce Product Gallery line-height options not applying correctly in Visual Builder and Frontend for Title, Caption and Pagination elements.
- Fixed Static Module Summary field not displaying on the frontend to match Visual Builder output.
- Fixed D4 layouts imported through Divi Library not being migrated to D5 format.
- Fixed WooCommerce checkout validation errors appearing across all checkout modules instead of only in their relevant modules. Optimized checkout and cart module rendering by preventing unnecessary template rendering when modules should not display.
- Fixed Email Optin module background color migration when "Use Background Color" toggle is off.
- Fixed Blog Module to correctly display all posts on archive pages, including the most recent post, when using Theme Builder templates.
- Fixed Contact Form field IDs being incorrectly modified when cloning an entire form, which broke custom Message Patterns that rely on consistent field IDs across multiple forms.
- Fixed Germanized for WooCommerce plugin content appearing outside module containers in Divi 5 by implementing proper hook relocation for blocks and shortcodes.
- Fixed Divi Timeline Layout migration failing with "Legacy Modules Detected: et_pb_blurb" error by adding missing D4 list styling attributes to legacy attributes list.
- Fixed Loop Builder using WordPress reading settings as a fallback instead of the configured default posts per page value.
- Fixed module presets not migrating from Divi 4 to Divi 5 after using "Restore Divi 4 Content" in the Divi 5 Migrator.
- Fixed Toggle modules from Divi 4 not migrating properly to Divi 5 and displaying backward compatibility warnings.
- Fixed WooCommerce checkout and cart pages showing blank content when opening Visual Builder without saving.
- Fixed WooCommerce Product Title module heading level setting not applying on the frontend.
- Fixed D5 migration system to properly convert presets from multiple D4 layout imports instead of skipping presets subsequent migrations.
- Fixed Blog module Option Group Presets for Title Text and Meta Text where only one preset was applying while maintaining preset classes de-duplication logic.
- Updated roadmap documentation with latest data from GitHub (179 main roadmap items, 201 developer roadmap items).
- Added support for conditional field visibility and final query control in Loop Builder, enabling third-party developers to create advanced Loop extensions with custom fields that respond to loop settings and query modifications that persist through context processing.
- Fixed sortable list fields (checkbox options, radio options, select options) rendering as plain text inputs in Contact Field and Signup Custom Field modules, allowing proper list management with drag/drop reordering, item actions, and value persistence.
