Version: v.2.1.0
    Added:
        - TrxAddons: AI Helper: assistant-based chats and TrxSupPilot have been migrated to the OpenAI Responses API with Conversations and Vector Stores (OpenAI shut down the Assistants API). Assistant settings now include model selection, vector stores and individual instructions for each assistant.
        - TrxAddons: AI Helper: Image Generator now supports the new OpenAI image models (DALL-E 2 and DALL-E 3 were retired by OpenAI); the default model list has been updated.
        - TrxAddons: AI Helper: added Atomic Grid support to the AI content generator.
        - TrxAddons: added the "grab_output_allowed" option to disable output buffering on hosting services such as WordPress.com.
        - TrxAddons: added support for the trx_wcext_attributes_data attribute for compatibility with the free version of the trx-wcext plugin from WordPress.org.
        - TrxAddons: Layouts Widget: added responsive support for the panel size setting, as well as styling options for the panel/popup container, overlay and close button.
        - TrxAddons: Slider Widget: added fields to create and style a button in the Info block, and extra alignment settings for slider titles and bullets.
        - TrxAddons: Elementor Templates: added transformer classes to export/import self-hosted videos from Atomic widgets.

    Changed:
        - CSS and JS minification functions have been rewritten - the result is now much more reliable in corner cases (e.g. comments inside regular expressions).
        - TrxAddons: Gutenberg editor: rewritten the preparation of gutenberg-preview.css and added the "load_assets_method_for_gutenberg_editor" option to switch the style loading method between add_editor_style and enqueue_style.
        - TrxAddons: reworked the scroll animation to anchors: it now respects anchor settings, runs without interruptions and works correctly in Chromium-based browsers; the Menu Anchor widget got scroll animation settings, and the active menu item is now detected at 30% from the top of the window.
        - TrxAddons: Slider Widget: the slide link has been moved above the text so it covers the whole slide.
        - TrxAddons: WooCommerce Search Widget: auto-detected filters now sort attribute names, skip attributes with "Use As Filter" disabled and work much faster in large stores (20k+ products).
        - TrxAddons: the user name and email fields are now required during theme activation (except for WaaS-based themes).
        - TrxAddons: the theme's rtl.css is now output in a separate block after responsive styles when styles are moved to the head.
        - TrxAddons: Elementor Templates: added checks so Atomic V4 classes are not loaded in older Elementor installations.
        - TrxAddons: disabled the addon initialization for TinyMCE on LearnPress pages.

    Fixed:
        - Fixed the page scrolling to the top after selecting a local link in the mobile menu when the link is specified as a full URL with a hash (url#hash).
        - TrxAddons: fixed potential SSRF vulnerabilities in trx_addons_get_svg_from_file() (SVG loaded by URL from shortcode parameters) and in the AI Helper "Add to uploads" feature (reported by Patchstack).
        - TrxAddons: fixed potential Stored XSS vulnerabilities in the Elementor "Background Text" extension (effect, divider icon and image URL), in the Elementor presets extension and in the Instagram widget.
        - TrxAddons: fixed a potential vulnerability caused by attribute injection into html_tag parameters.
        - TrxAddons: fixed a potential vulnerability when processing macros in trx_addons_prepare_macros() (reported by Patchstack).
        - TrxAddons: fixed a potential PHP Object Injection vulnerability when unserializing data in trx_addons_decode_settings().
        - TrxAddons: fixed loading of font and icon files into the Gutenberg editor when the enqueue_style method is used.
        - TrxAddons: Elementor Templates: global class settings are now applied immediately when importing Atomic widgets, even if those classes were not used on the page before the import.
        - TrxAddons: Elementor Templates: fixed media import in Atomic templates - identical files are no longer duplicated, and media (including SVG) from our widgets is imported correctly.
        - TrxAddons: Elementor Templates: fixed import of Atomic templates with separate borders.
        - TrxAddons: Elementor Templates: search in Atomic templates is now case-insensitive.
        - TrxAddons: Slider Widget: fixed the arrows sliding out on hover (the transition was overridden to color changes only).
        - TrxAddons: Slider Widget: the reset of hidden items after the "item-by-item" animation now also works when the slider is initialized after the animation has started.
        - TrxAddons: fixed the Layouts Popup script to prevent duplication of the Atomic YouTube widget when the popup is reopened.
        - TrxAddons: fixed updating of taxonomy and term lists for all post types.

Version: v.2.0.2
    Added:
        - TrxAddons: added reset of hidden items after the "item-by-item" animation inside sliders.
        - TrxAddons: Woo Products Widget: added output of swatches from the trx-wcext plugin in product feeds and the Quick View popup.
        - TrxAddons: added a recommendation to install the trx-wcext plugin for Elementra-based themes when WooCommerce is active.
        - TrxAddons: added item-by-item animation compatibility in trx-wcext support.
        - TrxAddons: Elementor Templates: added an info button (i) for templates that depend on third-party plugins or require attention before loading. Such templates now also display a message when the "Insert" button is clicked.
        - TrxAddons: added support for SportsPress affiliate functionality.
        - TrxAddons: Layouts - Cart Widget: added an option to hide the zero counter.
        - TrxAddons: fixed menu for touch devices: added submenu shift to the left via submenu_left.

    Changed:
        - TrxAddons: custom columns in term lists now use add_filter for compatibility with the latest WooCommerce versions, where typed filter handlers require a returned value.
        - Excluded videos inside RevSlider and the Atomic Video widget from mediaelements initialization.

    Fixed:
        - TrxAddons: fixed compatibility with product attribute output created in trx-wcext when the trx-wcext plugin is not active.
        - TrxAddons: Slider Swiper: fixed the Flip effect styles on iOS, where neighboring slides were visible.
        - TrxAddons: fixed WooCommerce search redirect from single product pages so searches open the shop search results page instead of the regular search results page.
        - TrxAddons: fixed compatibility with trx-wcext so pages containing its widgets are correctly detected as WooCommerce pages.
        - TrxAddons: fixed an iOS issue where menus disappeared immediately after tapping the item that opens them.

Version: v.2.0.1  
    Added:
        - TrxAddons: WooCommerce Product Filter Widget: added item filtering for large lists with more than 15 items and scrollable attribute lists in the sidebar.
        - TrxAddons: added handlers for displaying library templates when creating 'woo-template' posts in ThemeREX WooCommerce Extension.
        - TrxAddons: added support for "word-to-site-ai" WaaS service keys.
        - Added compatibility with Elementor Pro product tabs.
        - Added theme options update when importing ThemeREX WooCommerce Extension templates from the library.

    Changed:
        - TrxAddons: Elementor Templates: template import now replaces the 'elementra' slug in page settings with the current theme slug.
        - TrxWcExt: all page templates have been moved to the custom 'woo-template' post type starting from version 2.0.
        - Improved handling of 'woo-template' based pages in ThemeREX WooCommerce Extension support.

    Fixed:
        - TrxAddons: fixed Woo Products widget and custom attribute type compatibility with the ThemeREX WooCommerce Extension plugin.
        - Fixed mobile menu focus behavior after clicking local menu links.
        - Fixed admin styles for compatibility with WordPress 7.0.

Version: v.2.0.0  
    Added:
        - Full compatibility with WordPress 7.0 and later.
        - Full compatibility with the Elementor V4 builder.
        - Support for Elementor V4 Atomic widgets.
        - New "Atomic" demo built entirely with Atomic widgets.
        - New set of 100% Atomic templates added to the ThemeREX Template Library.
        - Full support for the Advanced WooCommerce plugin, including its advanced WooCommerce widgets.

Version: v.1.1.3
    Added:
        - Added Compare support for the "ThemeRex WooCommerce Extension" plugin.

    Fixed:
        - Added WooCommerce availability checks in ThemeREX WooCommerce Extension.

Version: v.1.1.2
    Added:
        - TrxAddons: new trx_addons_action_allow_upload_glb filter to allow/disallow .glb (3D model) uploads.
        - TrxAddons: NavMenu Widget: basic RTL support (style level).
        - TrxAddons: Atomic Editor V4: support for Atomic Blocks/Templates in Elementor (import, in-editor text generation, image-to-layout search), theme fonts/colors as locked predefined variables, and auto-enable after full demo import on Elementra-based themes.
        - TrxAddons: automatic market detection (Envato, ThemeREX.net, Freemius) on theme activation by purchase key, enabling activation across marketplaces.
        - TrxAddons: WooCommerce API: filters to disable selected TrxAddons components (custom attribute types, Product Filters widget, etc.) so third-party plugins can register their own conflict-free.
        - TrxAddons: Elementor Templates: demo-site header loading for mega menus (like the "header" template type).
        - TrxAddons: Elementor: custom-cart (Elementor Pro) selectors in the Cart Widget, and forced Swiper styles in WooProducts (newer Elementor loads them only when a Slider is present).
        - Mobile menu: keyboard focus looping (Tab from last - first; Shift+Tab from first - last).
        - Support for the "ThemeRex WooCommerce Extension" plugin (extended WooCommerce page customization).

    Changed:
        - TrxAddons: Elementor Templates: dropped the addon-wide theme-activation dependency; only the Library stays restricted, theme colors/fonts in Elementor global variables are now always available.
        - TrxAddons: hardened AJAX request handlers with extra checks on potentially unsafe areas.
        - TrxAddons: escape $$type during Atomic layout export to prevent variable-interpolation errors on import.
        - TrxAddons: WooCommerce Product Search Widget: removed "last_stop" (no scroll-to-previous-position after filtering) and optimized queries for large databases.
        - TrxAddons: AI Helper: refreshed default OpenAI models (added GPT-5.4/5.5, removed outdated).
        - TrxAddons: Cart Widget: higher selector priority so cart settings override plugin/theme styles.
        - TrxAddons: clear Elementor file cache after demo import and layout-kit creation.
        - Sticky options tabs panel in theme/plugin settings.

    Fixed:
        - TrxAddons: Elementor editor notice ('elementor-frontend' now registers later while layouts depend on it).
        - TrxAddons: "Layouts"/Elementor "Template" widgets: animated blocks from inserted templates now show in the editor.
        - TrxAddons: Atomic layout styles now load on non-Elementor pages (e.g. blog archives).
        - TrxAddons: Elementor Templates: Image To Layout panel no longer overlaps pagination; SVG icon import fixed for Atomic templates.
        - TrxAddons: WooCommerce Product Search Widget: sidebar list height capped to the viewport.
        - TrxAddons: sc_layouts_row_fixed_placeholder no longer appears above the fixed row.
        - TrxAddons: .page_content_wrap.page_content_wrap_custom_header_margin selector priority fixed in inline styles so theme stylesheets don't override it.
        - TrxAddons: mega menu shifting with "Fullwidth stretch" in the mobile menu, and submenus/mega menus going off-screen in the collapsed menu.
        - TrxAddons: WooCommerce API: non-Latin attribute names (previous fix always matched the first product on the page, conflicting when names repeated).
        - Skin category output: 'ai' now displays as 'AI' (not 'Ai').
        - Minor CSS fixes.

Version: v.1.1.1
    Fixed:
        - Fixed a potential Object Injection vulnerability during unserialize of data from scheme_storage and skin options during skin installation/activation.
        - Hotspot Widget: Fixed styles to prevent hotspots from overflowing small images (when the image width is smaller than the container).

Version: v.1.1.0
   Added:
        - Nav Menu Widget: added max-height setting for dropdowns - this enables scrolling inside the dropdown if its content exceeds the specified height.
        - Slider Widget: added "slides_min_width" parameter to slider settings for adjusting the minimum width of slides - this determines the maximum number of simultaneously visible slides in responsive mode.
        - TrxAddons: added voice input support to the TrxAiAssistant helper chat in the admin panel.
        - Layouts Login Widget: added a parameter for configuring the list of items in the user menu.
        - AI Helper: added a microphone button to all shortcode generators, allowing users to dictate prompts for content generation by voice.
        - AI Helper: added SpeechToText functionality for converting voice to text and populating the associated text field.
    Fixed:
        - AI Helper: Audio Generator - fix in the upload field name 'upload_voice' when checking file type. The incorrect field name caused a potential vulnerability flagged by WP Scan.
        - Nav Menu Widget: fix in the mobile menu panel close script to prevent scrolling to the top of the page when closing the menu.
        - Nav Menu Widget: fixed a bug with duplicate IDs for the main menu and its mobile version.
        - TrxAddons: fix in api/woocommerce to support non-Latin characters in WooCommerce product category and attribute names.
        - TrxAddons: fix in the parallax animation script - a scaled object was jittering on the resize event.
        - TrxAddons: Elementor Widgets: optimized database queries in "Posts" and "Woo Products" widgets, and fix for autocomplete terms - taxonomy was not taken into account when searching for terms.
        - Fix in xxx_add_to_url() functions to support arrays in URL parameters.
        - Minor CSS fixes (The Events Calendar).
    Removed:
        - Commented code and style fragments removed.

Version: v.1.0.9
    Added:
        - TrxAddons: Added version check and auto-update before running “Start Setup” in the theme installer. If a newer version is available on the server, it updates automatically (via ThemeREX Updater if not installed) to prevent issues with skin/addon/demo installation.
        - Security: Introduced trx_addons_sanitize_slug function to sanitize skin/addon/template slugs and prevent potential LFI vulnerabilities in AJAX requests.
        - WPML: Added <shortcodes> section in wpml-config.xml with translatable shortcode attributes in TRXAddons.
        - Animations: Fixed Elementor’s transition: transform interference with scroll/mouse animations in TRXAddons.
        - Color Picker: Added a “Clear” button to the lc_color_picker (multi-point gradient) in TRXAddons.
        - Posts Widget: New options for Stripe layout — “Hide Content on Mobile” and “Image Over Content on Mobile.”
        - Icon List Widget: Added styling and transition settings.
        - NavMenu Widget: Added a :before element to preserve hover state when moving from menu item to dropdown.
        - Marquee Widget: Removed “%” unit from Vertical Offset (non-functional).
        - Hotspot Widget: Added sonar rounding and Icon Size option for type=image.
        - Post Meta Widget: Added tag support for Custom Meta layout.
        - Info Box Widget: Added an “Angle” option for the icon hover animation “Rotate.”
        - Switcher Widget: Added Content Overflow control (visible/hidden).
        - AI Helper: Added attachment support in assistants and new GPT-5 models to the default list.
        - AI Helper: Updated OpenAI model references and corrected output tokens for GPT-4o.
        - Elementor Templates: Added image-based filtering to the Blocks tab — select a layout screenshot to find visually similar templates. Includes Accuracy setting and relevance-based sorting.
        - Demo Importer: Added ability to import pages from other skins under Partial Import tab.
    Fixed:
        - AI Helper: Renamed “Duration” parameter to “Complexity” in Music Generator widget (API change).
        - Code Review (Envato): Consolidated multiple jQuery(document).ready() handlers in utils.js and theme-options.js.
        - Updated compatibility with PHP 8.5 — the (boolean) type cast is no longer supported and has been replaced with (bool).
        - Fixed a WP Customizer error that occurred when changing colors for controls with names like tribe_events[global_settings][title_color].
        - Style tweaks for WooCommerce integrations.
    Removed:
        - TrxAddons: Removed forced inclusion of the AI Engine plugin from bundled themes.

Version: v.1.0.8
    Added:
        - TrxAddons: Hook for SportsPress to prevent redirecting to the “Welcome” screen after activation during demo import.
        - Elementor Templates: "Insert", "Add to Favorites" buttons, and category name added in the Preview window.
        - Backdrop Blur: New settings for sections, columns, containers, and all Elementor widgets; default semi-transparent background for sticky sections.
        - HotSpot Widget: Major redesign for responsive positioning and styling; added tag selection, icon customizations, popup alignment, offsets, and more.
        - Woo Products Widget: AJAX support for variable/grouped products; compatibility fixes for Tutor LMS.
        - Logo Widget: Added styling options for text/slogan if no image logo is selected.
        - Images Compare Widget: Separate styling for separator/handler; option to hide handler and control tag/offsets for "Before" & "After".
        - Posts Widget: New “Stripe” skin – horizontal layout with image and two-column text.
        - Theme Core Check: Added warning if theme core isn't updated before skin update (to avoid missing functions).
    Fixed:
        - TrxAddons: Tribe Events export now checks for new TEC tables (tec_events, tec_occurrences) if no events in wp_posts.
        - Stack Sections: Fixed offsets, sticky section positioning on iOS, and animation issues with GSAP.
        - Sticky Rows: Prevented content jump when "Hide fixed rows" is enabled.
        - WooCommerce Product Categories (Elementor Pro): Selector weight increased to prevent theme styles from overriding grid layout.
        - TrxAddons: Fixed issue where inserting an empty header/footer would insert full page content.
        - Layouts Menu/Submenu: Improved mega menu alignment and renamed submenu option from “Static” to “Centered” for clarity.
        - Unserialize Enhancements: Improved handling of serialized strings with optional object unpacking (disable_objects flag).
        - AJAX Responses: Standardized response parsing and error handling across theme/plugin.
        - Security: Fixed potential LFI vulnerability during pagination.
        - Mobile Menu: Fixed auto-close when clicking tabs inside the menu.
        - PHP 8 Compatibility: Fixed various warnings and errors with string/integer operations and child post queries.
        - Header Fixes: Ensured mobile menu button displays correctly in default headers not using shortcodes.
        - Customizer: Fixed reset behavior for Logo option.
        - TGMPA: Support for install=false flag when registering Tutor plugin.
        - Minor CSS fixes: (The Events Calendar).

Version: v.1.0.7
    Added:
        - TrxAddons: Elementor Templates – Re-imports media if previously deleted after demo import; media placeholders are cleared after full import
        - Woo Products Widget – Added display and styling for product brands (new WooCommerce taxonomy)
        - Pricing Menu Widget – New skin "Style 5" with description shown to the right of the title
        - Slider Widget – Slide background option added (for "Fade" effect)
        - New Widget: Marquee – Based on "Advanced Title", with added scrolling controls (no hover or link settings)
        - Advanced Title Widget – Added height parameter for precise media sizing
        - Nav Menu Widget – Added option to set min width for megamenu
        - Plugin Settings – Added links to documentation and descriptions of custom Elementor settings/widgets
        - Stack Sections – Added transition duration control for Zoom, Blur, Opacity effects
        - Posts Widget – New "List" layout with image on the left and alignment controls
        - Elementor Presets Support – Added ability to save/load custom style presets for widgets, sections, columns, and containers. Stored in /plugins/trx_addons/presets/trx_addons-presets.json
        - Accessibility Improvements – Added role="button" to non-link anchors, converted anchor tags to <span> where appropriate, and added control for target="_blank" for external links
        - Default Presets – Added support for default Elementor widget presets in JSON
        - Skin Notice – Admin notice now includes "Dismiss" (7 days) and "Never Show Again" options
        - Accessibility improvements for WP Accessibility Check
    Fixed:
        - Style tweaks for The Events Calendar and WooCommerce integrations
        - Improved sticky row logic to fix jumping and enhance "hide_fixed_rows"
        - Fixed full-height rows when header_position: over (should match viewport height)
        - Fixed internal anchor scroll behavior to support Elementor Pro popups
        - Minor CSS fixes (Give, Event Tickets)
        - Fix to support install=false parameter when registering Tutor plugin in TGMPA
        - Minor bug fixes and optimization

Version: v.1.0.6
    Added:
        - TrxAddons: AI Helper - added support for the x.ai (Grok) API for generating texts and images
        - TrxAddons: WPML - added translation support for our Elementor Extensions like "Background Text"
        - TrxAddons: "Audio" widget updated with playlist and optional cover slider
        - Added support for the Tutor LMS plugin in skins where it is recommended
    Fixed:
        - SEO attributes now respect the "SEO snippets" option to avoid validation issues

Version: v.1.0.5
    Added:
        - Added new Expand/Collapse addon for toggling content visibility
        - Enabled the Excerpt length option when editing a page assigned as the Blog archive
        - New widget - Layouts: Login
        - Added support for the The Events Calendar and Event Tickets plugins in skins where they are recommended
    Fixed:
        - TrxAddons: Comprehensive updates and fixes across Elementor widgets, AI Helper, WPML compatibility, and layout components. Improvements include enhanced widget behavior, prompt generation, multilingual support, style adjustments, and better integration with Elementor and third-party plugins
        - TrxAddons: AI Helper – Updated and improved AI text generators for Elementor with refined prompt logic, JavaScript variable isolation, audio widget enhancements (hover styles, player width control), and compatibility fixes for icon rendering and download button behavior
        - Minor bug fixes and optimization
    Removed:
        - Removed 'medium' from external thumbnail sizes to prevent conflicts with the custom trx-addons-thumb-medium size

Version: v.1.0.4
    Added:
        - Added a forced check for addon and skin updates via the "Check again" link
        - In Give plugin support, added campaign pages (created with Gutenberg blocks) to the page detection function xxx_is_give_page()
        - AI Helper: Added the new "Ray 2.0 Flash" model from LumaLabs to the "Video Generator" widget
        - TrxAddons: Shortcode ICompare: Added customization settings – icon selection from Elementor's library and typography settings for before/after texts
        - TrxAddons: Elementor Widgets: Added a "Stretch Height" option to the Pricing Table widget to stick the footer with the button to the bottom of the block
    Fixed:
        - Replaced status_progress, status_success, and status_error icons during addon and skin updates with Dashicons
        - Elementor Templates: When importing a template, unavailable widgets are now replaced with an "Alert" widget showing a message about the missing widget (applies to widgets created by third-party plugins that are currently inactive)

Version: v.1.0.3
    Added:
        - Confirmed compatibility with WordPress 6.8
        - theme_filter_page_title_selector filters in JS and PHP to allow replacement of the page title selector in Elementor skins and clones
        - theme_filter_woocommerce_theme_support filter to customize WooCommerce arguments in Elementor skins and clones
        - Added support for the Give plugin in skins where it is recommended (Skin: Charity)
        - AI Helper: Added support for the new Stability AI API version (v2beta). two models from the old API version (v1) are still supported
        - AI Helper: Added a suffix with an instance number to form field IDs to prevent duplication and validation issues when multiple copies of the same shortcode are present on a page (no suffix is added to the first instance)
        - AI Helper: Replaced the <label> tag with <div> in the chat title to avoid validation errors caused by nested heading tags
        - AI Helper: Added a "Parse annotations" option to toggle the replacement of inline references (e.g., [1], [2]) in assistant responses with a corresponding list of sources below the reply. Enabled by default
    Fixed:
        - Moved loading of translation domains and theme plugins to priority -1 on the after_setup_theme action
        - Minor bug fixes and optimization

Version: v.1.0.2
    Added:
        - AI Helper: Removed the placeholder in all type="file" upload fields for W3C validator compatibility
        - Compatibility with Elementor's "Optimized Markup" experiment – when enabled, the 'common' section becomes 'common-optimized'. New parameters/sections now check for both naming variants
    Fixed:
        - Minor CSS fixes (input & checkbox | select2)

Version: v.1.0.1
    Added:
        - AI Helper: OpenAI-based trained AI Assistant V2
    Fixed:
        - Added selector to show separator before hidden option
        - AI Helper: styles of the AI widgets: Image Generator, Text Generator, AI Chat
    Removed:
        - .select_container wrapping for <select> – wrap manually if needed

Release: v.1.0.0