*** Product Addons Changelog ***

2025.12.03 - version 8.1.2
* Tweak - Replaced wc_enqueue_js with wp_add_inline_script according to the recommended WordPress core script patterns.
* Tweak - Bumped WordPress tested up to version to 6.9.
* Tweak - Bumped WooCommerce tested up to version to 10.4.

2025.11.12 - version 8.1.1
* Fix - Replaced deprecated script handles for compatibility with WooCommerce 10.3+.

2025.10.02 - version 8.1.0
* Fix - Allow 0 pre-filled value for Price and Quantity add-ons.
* Fix - Fixed an issue where dropdown options getting hidden when deleting an option.

2025.09.22 - version 8.0.0
* Tweak - Important: Updated frontend templates.
* Fix - Improved accessibility.

2025.07.29 - version 7.9.2
* Fix - Fixed an issue where jQuery TipTip tooltips were not loaded.

2025.07.02 - version 7.9.1
* Fix - Fixed an issue where subscription products with add-ons couldn't be configured in admin orders.
* Fix - Fixed an issue that prevented manually paying for subscriptions with required add-ons.

2025.05.20 - version 7.9.0
* Fix - Fixed an issue that prevented add-on options from being saved correctly when an add-on was removed.
* Dev - Removed deprecated WC_PAO_Core_Compatibility::wc_current_theme_is_fse_theme.
* Tweak - Removed name attribute from product_addons_export_string to improve compatibility with certain hosts.
* Tweak - Updated all json_encode functions with wp_json_encode.

2025.05.06 - version 7.8.2
* Tweak - Replaced the use of deprecated function wc_current_theme_is_fse_theme.
* Tweak - Deprecated WC_PAO_Core_Compatibility::wc_current_theme_is_fse_theme.
* Tweak - Added validation when re-ordering a product with add-ons. Can be disabled via: 'woocommerce_product_addon_reorder_disable_validation'.

2025.04.10 - version 7.8.1
* Fix - Improved handling of add-ons display to prevent conflicts when the global product object is missing.

2025.04.08 - version 7.8.0
* Tweak - Important: Updated the image.php template, which is responsible for displaying Multiple Choice add-ons as images.
* Tweak - Added width and height attributes on multiple choice option images.
* Fix - Resolved some styling issues in the Products > Add-Ons configuration screen

2025.03.10 - version 7.7.0
* New - Added support for Product Add-Ons selection in Store API.
* Fix - Fixed an issue with long multiple choice options not being selected.
* Fix - Fixed a display issue with flat fees pricing when purchasing more than one product in the Cart block.

2025.03.03 - version 7.6.0
* New - Added a visibility option to Multiple Choice and Checkboxes add-ons.
* New - Important: Updated the Multiple Choice and Checkboxes templates.
* Fix - Fixed an issue where a dropdown was wrongfully appearing for Multiple choice add-ons displayed as images.
* Fix - Fixed a compatibility issue with PayPal and the cart/checkout block that removed add-on prices in cancelled orders.

2025.02.11 - version 7.5.0
* New - Added a 'Clear' button to File Upload add-ons.
* Tweak - Important: Removed compatibility with the new Product Editor.
* Tweak - Important: Updated the File Upload template.

2025.01.22 - version 7.4.0
* New - Added support for default values in Multiple Choice, Checkbox, Quantity and Price add-on types.
* New - Updated the REST API integration to support default add-on values.
* Tweak - Updated the REST API integration to support decimal values for min/max Price add-on fields.
* Fix - Fixed an issue where multiple choice options could be assigned to the incorrect add-on when add-ons are being moved around.

2025.01.15 - version 7.3.1
* Fix - Fixed an error triggered when clicking on the cart item link of a product with a un-configured custom price add-on.

2025.01.14 - version 7.3.0
* Tweak - Important: Updated the template for displaying Price add-ons.
* Tweak - Supported decimal values for Price add-ons, based on the store's decimal separator.
* Tweak - Removed use of global product variable in the context of the admin page.
* Fix - Fixed dates before 1970 in Date Picker add-on not being allowed.
* Fix - Fixed non-display of add-ons in single product block.

2024.12.02 - version 7.2.1
* Fix - Fix fatal error when the cart permalink is cleared.
* Fix - Fixed selected image add-on price not displaying in admin orders.
* Fix - Fixed empty return while using the 'woocommerce_add_cart_item_data' filter.
* Fix - Fixes issue with admin order editing of global add-ons with category filtering on product variants.
* Fix - Fixed Tracker error when invalid global add-on is encountered.

2024.11.20 - version 7.2.0
* New - Added compatibility with WordPress 6.7.
* New - Added support for pre-populating add-ons when clicking on a cart item link.
* New - Introduced the 'woocommerce_pao_reset_file_link' filter to modify the file input clear link.
* New - Introduced the 'woocommerce_product_addons_cart_permalink' filter to control when to pre-populate add-ons from a cart item link.
* New - Introduced the 'woocommerce_product_addons_parse_cart_addons' filter to modify the add-ons parsed from a cart item link.
* Tweak - Templates have been updated to support pre-populating add-on values.
* Tweak - Allowed decimal values for the Limit Price option for Price add-ons.
* Fix - Enforce minimum epoch date for date pickers in add-ons.
* Fix - Resolved an issue that caused global add-ons to not be saved when editing a variation order item in the admin context.
* Fix - Resolved an issue with price calculations that can result in the customer being shown the incorrect price on the product page with slow servers or connections.

2024.10.22 - version 7.1.2
* Fix - Fixed a regression with front-end validation for image add-ons.
* Fix - Fixed a regression with front-end validation for file upload add-ons.

2024.09.30 - version 7.1.1
* New - Important: Data migrations from versions before 3.0 are disabled by default. Introduced 'woocommerce_product_addons_enable_migration_3_0' filter to allow this to be overridden.

2024.09.17 - version 7.1.0
* New - Important: Product Add-Ons now requires Composite Products 10.1+ for the integration between the two plugins to work.
* New - Important: Product Add-Ons now requires Product Bundles 8.1+ for the integration between the two plugins to work.
* New - Added support for configuring bundled product add-ons in admin orders.
* New - Added support for configuring component add-ons in admin orders.
* Fix - Support add-ons configuration in admin orders for variations.

2024.09.03 - version 7.0.3
* Fix - Resolved warning triggered by global add-ons without ID.

2024.08.27 - version 7.0.2
* New - Added full validation to order add-on configuration in the admin.
* New - Use global add-on ID for class names in global add-ons.
* Fix - Resolved a PHP warning triggered when adding a product with add-ons to the cart, while using WooCommerce 9.2+.
* Fix - Resolved PHP warnings triggered when doing a REST API v2 request with missing data.
* Fix - Corrects the validation for quantity fields to validate the min and max values even if the field is not required.
* Fix - Prevent negative values for Customer-defined price and Quantity add-on types.
* Fix - Fixed Add-On type display value in admin for the Heading Add-On type.
* Fix - Resolved an issue that prevented percentage add-on prices from showing correctly for Name Your Price products in the order confirmation page.
* Tweak - Removed WooCommerce Navigation integration.
* Tweak - Improved display of field type in the admin for narrow browser windows.
* Tweak - Improve contrast of field type and ID in the admin.
* Tweak - Add defensive is_array checks to prevent errors when fetching add-ons with filters.

2024.07.31 - version 7.0.1
* Fix - Deactivate plugin for WooCommerce versions prior to 8.2 to avoid fatal errors.

2024.07.30 - version 7.0.0
* Important - New: PHP 7.4+ is now required.
* Important - New: WooCommerce 8.2+ is now required.
* Important - New: WordPress 6.2+ is now required.
* Important - Removed all previously deprecated code.
* New - Updated the 'woocommerce_product_addons_update_product_price' filter to modify the flat fees sum associated with a cart item, as well. Used in WooPayments MultiCurrency 8.1+.
* Fix - Normalised the way that custom price fields are saved.
* Fix - Fixed a pay-for-order conflict with WooPayments.
* Tweak - Cleaned up frontend hooks from admin templates.
* Tweak - Removed trailing [] from radio button input name attribute in 'templates/addons/radiobutton.php'.

2024-07-03 - version 6.9.0
* Important: New - Product Add-Ons now requires Product Bundles 7.2+ for the integration between the two plugins to work.
* Important: New - Product Add-Ons now requires Composite Products 9.1+ for the integration between the two plugins to work.
* New - REST API v2.
* New - Introduced compatibility with the new Product Editor.
* New - Added support for add-ons configuration in admin orders.
* Tweak - Started recording raw prices and user supplied values for orders created with add-ons.
* Fix - Fixed Add-On type display value in admin for the Checkboxes Add-On type.

2024-06-04 - version 6.8.4
* Fix - Improved validation of values when getting maintenance and dismissed notices from the DB.

2024-05-14 - version 6.8.3
* Fix - Important: Security improvements.
* Fix - Fixed an issue where add-on IDs change on each save.
* Tweak - Added more classes in add-ons subtotals.

2024-04-09 - version 6.8.2
* Tweak - Updated the way of identifying hydration context in Store API requests.

2024-03-26 - version 6.8.1
* Fix - Fixed an issue that prevented importing add-ons to new global add-on groups.

2024-03-12 - version 6.8.0
* New - Introduced Date Picker add-on type.
* New - Introduced 'Add placeholder' option for text add-ons.

2024-03-05 - version 6.7.0
* Important: New - Product Add-Ons now requires Product Bundles 7.0+ for the integration between the two plugins to work.
* Important: New - Product Add-Ons now requires Composite Products 9.0+ for the integration between the two plugins to work.
* Tweak - Reveal add-on subtotals only when an add-on has been selected in products with only optional add-ons.
* Fix - Resolved a PHP error that can occur when multiple choice add-on's value is empty
* Fix - Resolved a PHP error that can occasionally occur when using WooPayments

2024-01-24 - version 6.6.0
* Important: Tweak - Used JSON encoding for importing/exporting add-ons. Serialized export data created by previous plugin versions will no longer work.
* New - Added compatibility with PHP 8.3
* Fix - Removed WooPayments express checkout buttons from product pages with add-ons due to avoid compatibility issues.
* Fix - Removed Stripe express checkout buttons from product pages with add-ons due to avoid compatibility issues.
* Fix - Removed PayPal smart buttons from product pages with add-ons due to avoid compatibility issues.
* Fix - Resolved an issue that enforced min/max quantity rules even when Limit Quantity was disabled.
* Fix - Resolved PHP warning triggered when editing a product with a deleted add-ons meta.
* Tweak - Improved the handling of the global product object to avoid compatibility issues with other plugins using it.
* Tweak - Defer frontend scripts.

2023-12-20 - version 6.5.2
* New - Introduced the 'woocommerce_addons_cloned_product_with_filtered_price' to allow plugins to not discount add-on prices.
* Fix - Resolved a styling issue with quantity-based add-on prices on the single product page.

2023-11-29 - version 6.5.1
* Tweak - Introduced admin validation to ensure that add-on titles do not exceed 255 characters.
* Tweak - Introduced the 'woocommerce_addons_product_page_container_classes' filter to add additional classes to the container add-on elements on the product page.
* Tweak - Updated the description for the 'Use Global add-ons?' option.
* Fix - Fixed the display of negative add-on prices.
* Fix - Updated the image swatches template to display only the add-on name on hover when its price is 0.
* Fix - Fixed a pagination issue with global add-ons.

2023-10-24 - version 6.5.0
* New - Added onboarding.
* Tweak - Important: Re-designed Product Data > Add-ons and Products > Add-ons tabs.
* Tweak - Important: Updated the process of importing/exporting add-ons to require fewer clicks.
* Tweak - Important: Moved the 'Show incomplete subtotals' setting to WooCommerce > Settings > Products > Add-ons.
* Fix - Resolved an issue that made add-ons show up twice when paying for failed subscription orders.
* Tweak - Declared compatibility with the cart/checkout Blocks.

2023-09-19 - version 6.4.7
* Tweak - Used admin theme colors in admin.
* Tweak - Displayed WC Admin bar on Global Product add-ons pages.
* Fix - Resolved an issue that accidentally selected image swatches in mobile screens while scrolling.

2023-09-04 - version 6.4.6
* Fix - Resolved deprecation warnings when PHP 8.2 is used.

2023-08-07 - version 6.4.5
* Tweak - Important: Updated the 'addon-start.php' template to resolve a warning that showed up for add-ons with missing IDs.

2023-07-20 - version 6.4.4
* Fix - Resolved a fatal error caused by missing regular prices in the product object.
* Fix - Resolved incorrect subtotals in the single product page when a tax suffix was used.
* Tweak - Removed duplicate filters.

2023-06-27 - version 6.4.3
* Tweak - Important: Updated the 'addon-start' template and added the tax status data attribute.
* Fix - Fixed an issue that made tax suffixes show up in non-taxable products with add-ons.
* Fix - Fixed a PHP warning triggered by a duplication of the 'apply_filters_deprecated' call.
* Fix - Resolved an issue that prevented some of the selected checkbox from being added to the cart when ordering again.
* Fix - Resolved an issue that threw a validation error when renewing a subscription with required add-ons.

2023-06-21 - version 6.4.2
* Fix - Resolved a PHP warning triggered when adding a Bundle/Composite without any container-level add-ons to the block-based cart.

2023-06-19 - version 6.4.1
* Fix - Fixed an issue that prevented add-on totals from updating in Variable Products when a tax suffix was used.
* Fix - Fixed an issue that made add-ons show up twice in the cart when renewing a subscription.

2023-06-13 - version 6.4.0
* Tweak - Important: The price of flat fee add-ons is no longer added to the per unit product price in the cart, but directly to the product total.
* Tweak - Important: The add-on prices in the cart are now displayed next to the selected add-on options, instead of the add-on name.
* Tweak - Important: The 'woocommerce_addons_add_price_to_name' filter is now deprecated. Use 'woocommerce_addons_add_product_price_to_value' or 'woocommerce_addons_add_cart_price_to_value' or 'woocommerce_addons_add_order_price_to_value' instead.
* Tweak - Important: Requires Product Bundles 6.20.0+ and Composite Products 8.9.0+.
* Tweak - The prices of flat fee add-ons are now prefixed with a '+' sign in the cart/order templates to indicate that these prices are not included in the per unit product price.
* Tweak - The prices of quantity/percentage based add-ons are now hidden by default in the cart/order templates, as they are already included in the  per unit product prices. To reveal them, use the 'woocommerce_addons_add_cart_price_to_value' or 'woocommerce_addons_add_order_price_to_value' filter.
* Tweak - Added basic telemetry using Tracks.

2023-06-01 - version 6.3.2
* Fix - Fixed styling for dismissible admin notices.

2023-05-29 - version 6.3.1
* New - Introduced block theme support on existing frontend templates.
* Fix - Improvements in global styles compatibility.

2023-05-23 - version 6.3.0
* Fix - Important: Security improvements.
* New - Added admin notice to stores that use a PHP version earlier than 7.0.
* Tweak - Added a notice when addons cannot be saved due to a low 'max_input_vars' value.
* Tweak - Updated the logic that determines in which admin screens, Product Add-Ons styles/scripts are loaded.
* Tweak - Optimized the way global addons are saved.
* Fix - Fixed a fatal error triggered when dividing the addon price by a zero quantity.

2023-04-11 - version 6.2.0
* New - Important: Bumped minimum required versions.
* Fix - Important: Security improvements.
* Fix - Fixed an issue that prevented long text addons from being validated.

2023-04-04 - version 6.1.3
* Fix - Fixed an issue that prevented addons totals from showing up if required Addons were selected before variations.
* Tweak - Introduced basic telemetry to collect data on extension usage when tracking is enabled.

2023-03-13 - version 6.1.2
* Update - Improved performance when calculating addons totals between validation runs.

2023-03-02 - version 6.1.1
* Fix - Fixed an issue that prevented addon totals from showing up when at least one checkbox or radio button was selected.
* Fix - Display a notice when users fill in a negative value in quantity addons.

2023-02-22 - version 6.1.0
* New - Important: Updated addons templates and removed addons titles from element attributes.
* Fix - Fixed an issue that disabled addons validation when an addon had non-Latin characters in its title.

2023-02-17 - version 6.0.4
* Fix - Fixed an issue that set 'None' as the default option for required multiple choice addons.

2023-02-16 - version 6.0.3
* Fix - Fixed an issue that hid the product form when a custom tax suffix was used.

2023-02-16 - version 6.0.2
* Fix - Fixed an issue that made users select all options in required checkboxes.

2023-02-15 - version 6.0.1
* Fix - Fixed an issue that prevented addon totals from being updated when the product quantity changed.

2023-02-14 - version 6.0.0
* Update - Important: Updated the single product form validation for required and restricted addons.
* Update - Important: Updated all frontend addon templates.
* New - Product Add-Ons is now compatible with Product Bundles 6.18.0+.
* New - Product Add-Ons is now compatible with Composite Products 8.7.0+.
* Fix - Fixed an issue that required users to click away from the addons form in order for addon totals to show up.
* Fix - Fixed an issue that prevented importing addons with descriptions that contained HTML.
* Fix - Added image swatch labels in mobile views.
* Fix - Resolved an issue that cleared the add-ons form when validation failed for multiple image add-ons.
* Fix - Resolved an issue that changed the position of the Add to Cart button when a long text add-on was configured.

2023-01-04 - version 5.0.3
* Feature - Added compatibility with the core WooCommerce Importer/Exporter for importing/exporting product-level addons.

2022-11-08 - version 5.0.2
* Tweak - Introduced compatibility with the new High-Performance Order Storage.
* Fix - Removed unnecessary meta boxes sanitization.
* Fix - Resolved an issue that made addons with identical titles show up multiple times in the cart when re-ordering.


2022-11-01 - version 5.0.1
* Fix - Resolved PHPCS security issues.
* Tweak - Updated numeric addons to be compatible with mobile browsers.
* Tweak - Declared incompatibility with the new High-Performance Order Storage.

2022-05-25 - version 5.0.0
* Tweak - WC 6.5 compatibility.
* Tweak - WP 6.0 compatibility.

2022-04-12 - version 4.9.0
* Tweak - WC 6.3.1 compatibility.
* Tweak - WP 5.9 compatibility.

2022-04-12 - version 4.8.2
* Fix - 'woocommerce_price_trim_zeros' sets precision, but doesn't actually trim.
* Fix - Bookings add-on "Multiply cost by person count" can't be unchecked.
* Tweak - WC X compatibility.
* Tweak - WP X compatibility.

2022-04-05 - version 4.8.1
* Fix - Fixed an issue that prevented the Product Addons subtotals from showing up for bundled/composited items.

2022-04-04 - version 4.8.0
* Fix - Fix potential crash with 3rd themes and plugins.
* Fix - Include vendor assets in composer.json.

2022-02-16 - version 4.7.0
* Fix - Hook to toggle the price from add-ons name does not work.
* Fix - Incorrect add-on price according to the location-based tax.
* Fix - Remove duplicate entries from the exclude list in composer.json.
* Fix - Text character limit doesn't show until you start typing in field.
* Fix - The HTML structure for checkboxes and radio buttons is improved.
* Fix - Updated script that reads 'show-incomplete-sub-total' data. Fixes conflict with Composite Products extension.

2022-02-08 - version 4.6.0
* Fix - Add option to show incomplete subtotal.
* Fix - Fix CI build errors.

2022-01-12 - version 4.5.0
* Fix - Fixed an issue where the subtotal price for a variable product was shown incorrectly on a product page.
* Fix - Fixes an issue in the admin panel when adding add ons.
* Tweak - WC 6.1 compatibility.
* Tweak - WP 5.8 compatibility.

2021-11-16 - version 4.4.0
* Fix - Escape output in some places across the plugin.
* Fix - Improve performance when displaying many global product addons.
* Tweak - WC 5.9 compatibility.
* Tweak - WP 5.8 compatibility.

2021-10-26 - version 4.3.0
* Tweak - Add filters to allow for extensibility.

2021-09-21 - version 4.2.0
* Fix - Fix page going off center after submitting an invalid form in some themes.
* Tweak - WC 5.8 compatibility.

2021-06-15 - version 4.1.0
* Fix - Reduce the number of events that trigger an add-on price calculation in the product page.
* Tweak - WC 5.5 compatibility.
* Tweak - WP 5.8 compatibility.

2021-05-11 - version 4.0.0
* Fix - Fix a notice when adding a product with an addon to the cart.
* Tweak - WC 5.3 compatibility.

2021-04-29 - version 3.9.1
* Fix - Fix uncompressed release archive by reintroducing postarchive step.

2021-04-28 - version 3.9.0
* Fix - Move to dart-sass to support M1.
* Fix - Refactor Cart price calculation to prevent conflicts with other plugins.
* Fix - Update build scripts and tooling.

2021-04-13 - version 3.8.0
* Fix - Sort Global Add-ons in the backend by priority.

2021-04-06 - version 3.7.0
* Fix - Honor taxes in Customer Defined Price add-ons when store shows prices including tax.

2021-03-30 - version 3.6.0
* Fix - Prevent negative input on price addons when min restrictions are enabled.
* Fix - Removed support for versions of WC 3.0 and below.
* Fix - Reordering Product Add-Ons with email address should not remove @ characters.
* Fix - Use h2 instead of h3 element for addon headings.
* Fix - Wrap addons in a `wc-pao-addons-container` div.
* Tweak - WC 5.1 compatibility.
* Tweak - WP 5.7 compatibility.

2021-03-09 - version 3.5.0
* Fix - Add Better guards for WC Navigation not being enabled.

2021-03-03 - version 3.4.1
* Fix - Fix products with add-ons not accepting coupons set to exclude sale items.

2021-02-22 - version 3.4.0
* Fix - Improve display of products with add-ons in Cart and Checkout blocks.
* Fix - Prevent products with required addons being added to the cart without options selected.
* Fix - Update node-sass to 4.14.1.

2021-01-27 - version 3.3.1
* Fix - Scroll to required multiple choice add-ons of rabio button type when trying to add to cart a product without choosing the add-on.
* Fix - Product total price will update instantly when writing a number in a quantity add-on.

2020-12-07 - version 3.3.0
* Fix - Fix Checkbox add-on not showing required styles when all are unselected.
* Fix - Fix addon start template in WooCommerce versions prior to 3.0.
* Fix - Remove usage of jQuery :last selector.

2020-11-25 - version 3.2.0
* Fix - Add plugin page to new WooCommerce Navigation.
* Tweak - WC 4.7 compatibility.
* Tweak - WP 5.6 compatibility.

2020-11-14 - version 3.1.1
* Fix - Calculate the selected addons subtotal, even if the date for a bookable product hasn't been chosen yet.
* Fix - Change field name upon selection when there is a description.

2020-09-29 - version 3.1.0
* Fix - Sanitize data when importing product addons.
* Fix - Include quantity in calculation for customer defined price fields.
* Tweak - Change quantity string for RTL languages.
* Tweak - WC 4.5 compatibility.
* Tweak - WP 5.5 compatibility.

2020-06-23 - version 3.0.35
* Fix - Update API.

2020-06-10 - version 3.0.34
* Fix - Prevent PHP notice on cart when _product_type is empty.
* Tweak - WC 4.2 compatibility.

2020-05-12 - version 3.0.33
* Fix - All Products for WooCommerce Subscriptions: Reset subscription details in add-ons total when reverting to the one-time purchase option.
* Tweak - Improve error handling on filesize limits.

2020-04-30 - version 3.0.32
* Tweak - WC 4.1 compatibility.

2020-04-17 - version 3.0.31
* Fix - Fix issue on cart file add-on.

2020-04-14 - version 3.0.30
* Fix - Readd addon file when ordering again.

2020-04-08 - version 3.0.29
* Fix - Wrap price strings with amount class to allow for dynamic currency conversions.
* Tweak - WP 5.4 compatibility.

2020-03-29 - version 3.0.28
* Fix - Only show addon description if enabled.

2020-03-17 - version 3.0.27
* Fix - Double label for quantity input multiplier.

2020-03-11 - version 3.0.26
* Fix - Always use quantity based pricing for customer defined price field.
* Tweak - Remove legacy code.
* Fix - Fatal error when a product does not exist in the display (e.g. compat plugin creating products on runtime).

2020-03-04 - version 3.0.25
* Fix - Fix accessibility warnings for addon input labels.
* Tweak - WC 4.0 compatibility.

2020-02-14 - version 3.0.24
* Fix - Minified missing JS file.

2020-02-12 - version 3.0.23
* Fix - Unescaped HTML on the frontend.

2020-02-12 - version 3.0.22
* Fix - Display addons prices excluding tax when a user is tax exempt.
* Fix - Allow prices to be displayed correctly when using a price display suffix.
* Fix - Show addon totals when multiplying by a time duration.

2020-01-14 - version 3.0.21
* Fix - Don't clear data on Add To Cart when required un-checked checkbox is in the product page.
* Fix - Set character set when decoding entities.
* Tweak - WC 3.9 compatibility.

2019-11-12 - version 3.0.20
* Fix - Bug calculating taxes on orders with percentage-based addons.

2019-11-04 - version 3.0.19
* Tweak - WC 3.8 compatibility.

2019-10-30 - version 3.0.18
* Fix - Short Text field validation with value 0

2019-10-15 - version 3.0.17
* Fix - Display of prices when using WooCommerce Bookings Accommodations.

2019-09-24 - version 3.0.16
* Fix - Image swatch double tap required on iOS.

2019-08-28 - version 3.0.15
* Fix - Legacy Order data triggers fatal error.

2019-08-08 - version 3.0.14
* Tweak - Add compatibility with All Products For Subscriptions.
* Tweak - WC 3.7 compatibility.

2019-07-10 - version 3.0.13
* Tweak - Addon setting name from "Name Your Price" to "Customer Defined Price".

2019-07-02 - version 3.0.12
* Fix - Wrong "Subtotal" when "None" option is selected.

2019-04-16 - version 3.0.11
* Tweak - WC 3.6 compatibility.

2019-03-08 - version 3.0.10
* Fix - PHP 7.3 compatibility warnings.

2019-02-27 - version 3.0.9
* Fix - When paired with variable subscriptions, subtotal suffix label not displaying correct duration.
* Fix - Product title showing undefined in add-ons list with certain themes.

2019-02-06 - version 3.0.8
* Fix - Quantity and flat fee cost calculation regression.

2019-02-04 - version 3.0.7
* Fix - Missing minified javascript files.

2019-02-01 - version 3.0.6
* Fix - Quantity based price calculations were being performed on flat fee addons.
* Fix - Subtotals were hidden on non-bookable products if the bookings addon was active when selecting addons.

2018-12-11 - version 3.0.5
* Fix - Decode currency character correctly to support all WooCommerce currencies.
* Fix - Product page displaying incorrect price for per-person and per-block addons with WooCommerce Bookings.
* Fix - Handle option descriptions with value '0'.
* Fix - Numeric option descriptions are displaying incorrectly.
* Fix - Price update pushes "Add to Cart" button out of the way.

2018-11-21 - version 3.0.4
* Fix - Ensure prices are displayed correctly on the frontend when using a comma as decimal separator.

2018-11-12 - version 3.0.3
* Fix - Currencies with comma separator not saving.
* Fix - Revert per line item level add-ons.

2018-11-7 - version 3.0.2
* Selective testing.

2018-10-29 - version 3.0.1
* Fix - Admin settings display sometimes not refreshed to new 3.0 version. Add versioning to CSS.
* Fix - Non required radio buttons causes undefined error when selecting on None.
* Fix - Remove file upload path from displaying on line item summary.
* Fix - When show tax inclusive on shop/pages is enabled, summary amount not reflecting tax.
* Fix - When saving price type settings, the type gets reverted to previous settings in certain cases.

2018-10-23 - version 3.0.0
* New - Flat fee based pricing.
* New - Percentage based pricing.
* New - Image swatches.
* New - Display add-ons as line items.
* Fix - Plugin prefix has been added to meta data so its identifyable.
* Fix - Cannot edit product if default label is empty.
* Add - Error handling on filesize limits.


2018-09-26 - version 2.9.7
* Update - WC 3.5 compatibility.

2018-05-23 - version 2.9.6
* Update - WC 3.4 compatibility.

2018-05-15 - version 2.9.5
* Fix    - Use proper conditional for trim trailing zeroes on precision.

2018-05-11 - version 2.9.4
* Revert - Labels should be required in 2.9.3.

2018-05-02 - version 2.9.3
* Fix    - No respect for the price_trim_zeros filter.
* Fix    - Cannot remove labels prior to saving changes.
* Fix    - Labels should be required.

2018-03-05 - version 2.9.2
* Update - POT file.
* Fix    - Display issue when subscription and simple products are combined in shortcodes.
* Fix    - Add-ons with negative price (or discounts) do not alter price.
* Fix    - PHP 7.1 compatibility notice
* Fix    - Line Breaks of a Custom Input add-on not shown in the order details page.

2017-12-12 - version 2.9.1
* Fix - When re-ordering, not all addons accounted for.
* Fix - Do not show addon totals before variations have been selected.
* Fix - When removing old global addons after import, all addons disappears.
* Fix - Taxes not calculating correct on display when using {price_including_tax} in price suffix.
* Update - Changed default Grand Total verbiage to Sub total for a more accurate description.
* Update - WC tested up to version.

2017-07-13 - version 2.9.0
* Fix - Further updates for WooCommerce 3.0 compatibility.
* Fix - Minor code cleanup (unused variable, PHPDocs).
* Fix - Variable products with required custom textarea not able to add to cart.
* Fix - Prevent global addon fields not saving when no name is entered.
* Fix - Issue resetting global product.
* Fix - Don't make custom price input required when not set.
* Add - new REST API endpoints for managing global and product addons
* Fix - Fatal error when combined with the Memberships extension.
* Fix - When grouped product contains simple and subscription product amount suffix shown incorrectly.
* Fix - Re-order addons were not being added.
* Fix - Notices when product object not found.
* Fix - Prevent filtering prices twice due to context issue.
* Fix - Inline VAT/TAX pricing not updating correctly on product page on addon grand total.
* New - Added the new Woo plugin header, for WooCommerce 3.1 compatibility.
* New - Compatibility with Smart Coupons Credit/gift coupon.

2017-04-03 - version 2.8.1
* Fix - Update for WooCommerce 3.0 compatibility.

2017-02-23 - version 2.8.0
* Fix - When re-adding items to cart, similar named addons is missing.

2016-12-09 - version 2.7.26
* Fix - Issue where required fields are failing to add to the cart using the order again option.
* Fix - Issue product add-ons are not being re-added when paying for pending or failed renewal orders.
* Fix - Update deprecated API of WooCommerce being used this extension.

2016-10-26 - version 2.7.25
* Fix - Text field type addon is not accounting for multibyte characters.

2016-09-29 - version 2.7.24
* Fix - Undefined error when variation data is not found.
* Fix - Product totals not updated instantly when clicking up and down number input.
* Fix - In Safari browser, validation not working when minimum set to 0.

2016-09-06 - version 2.7.23
* Fix - Addon totals were displayed on top of options due to last version.

2016-08-10 - version 2.7.22
* Tweak - Relocate addon fields to be after the variation description.

2016-07-16 - version 2.7.21
* Fix - Tax inclusive display is not showing on addons in cart/checkout.

2016-07-07 - version 2.7.20
* Tweak - Load frontend CSS with wp_enqueue_script hook instead of get_header

2016-06-14 - version 2.7.19
* Fix - Product addons not applying to grouped products when using global addons.

2016-05-26 - version 2.7.18
* Tweak - Adjusts the 'Product Data' icon to use Dashicons
* Fix   - Ensure compatibility with bookings where the price was not affected by the cost multiplier.

2016-04-04 - version 2.7.17
* Fix - Options total/grand total does not work with "Free" product.
* Fix - Missing minified quickview.js.

2016-03-20 - version 2.7.16
* Fix - When fields are not required and left empty, prevented add to cart from working.
* Fix - Compatibility with Subscriptions title when addon is present.
* Tweak - Compatibility with Composite Products.
* Tweak - Clear addon fields when clear variations link is clicked.
* Tweak - Using custom multiplier if zero is entered, don't show addons in cart.
* Update - POT file.
* Remove - accounting.js file in favor of using the one that comes with WC core.

2016-01-26 - version 2.7.15
* Tweak - Show the price display suffix on the grand total.

2016-01-14 - version 2.7.14
* Fix - WooCommerce 2.5 compatibility.
* Fix - Made the 'required' tooltip translatable.

2015-11-24 - version 2.7.13
* Fix - Compatibility fix for WooCommerce Photography. The "select options" button should now lead to the correct screen when using WC Photography 1.0.6.
* i18n / translation updates

2015-11-06 - version 2.7.12
* Fix - Compatibility fix for WooCommerce Photography. Users can no longer add photography products to cart without filling any required add-on fields.
* Fix - The "default label" place holder now clears when you click into it.
* Fix - Fix toggle display on "global add-ons" page.
* Fix - Compatibility fix for WooCommerce Quick View. Prices with variations now quickly display the correct grand total on single product pages.

2015-09-29 - version 2.7.11
* Limit input element names in HTML to less than 64 characters to avoid issues on some hosts

2015-08-20 - version 2.7.10
* Automatically add a default option when a new add-on group is added to a product
* Prevent merchant from removing all options in a given add-on group
* Add custom email as an add-on field option
* Add custom letters only text, digits only text and letters and digits only text as add-on field options
* Add subscription period to add-on prices and totals for simple subscriptions too (not just those with variations)

2015-07-29 - version 2.7.9
* Fix - 2.4 compatibility.
* Tweak - Improved bundles/composite compatibility.
* Tweak - Don't auto select radio buttons.
* Tweak - add filter woocommerce_product_addons_validate_value

2015-07-04 - version 2.7.8
* Fix - Using the POST data to get the product ID caused issues with 3rd party plugins. The issue around grouped products this was added to fix needs to be tackled by a different approach. In this case we decided to..
* Tweak - Make children products inherit addons from the parent (e.g the grouped product parent).
* Tweak - Don't allow addons with required fields to be purchased from grouped product pages.

2015-07-03 - version 2.7.7
* Fix - Compatibility with OPC and other plugins which change the add to cart process.

2015-06-28 - version 2.7.6
* Fix - Only add file upload cost if a file was actually uploaded .

2015-06-19 - version 2.7.5
* Fix - Link product-level add-ons to grouped products when adding to cart
* Fix - Use the correct ID for validation
* Tweak - Allow plugins to hide grand total.

2015-05-27 - version 2.7.4
* Bookings compatibility.

2015-03-13 - version 2.7.3
* Fix duplicates when ordering again.

2015-03-02 - version 2.7.2
* Fix woocommerce_order_item_display_meta_value
* Fix totals calc when currency contains decimal.

2015-02-24 - Version 2.7.1
* Filter upload dir
* Upload attachments linked in the notification emails

2015-01-27 - version 2.7.0
* Renamed main file.
* Make addons script hookable.
* Added WC 2.3.0 compatibility.

2014-12-18 - version 2.6.11
* Reverted previous change

2014-12-12 - version 2.6.10
* Fixed unwanted capitalization on attribute label in order item details of thank you page.

2014-12-02 - version 2.6.9
* Fixed the checkbox add-ons when using re-order action.
* Fixed the file upload path on order confirmation page and order review page.

2014-11-28 - version 2.6.8
* Added hooks to allow Global Add-ons for custom taxonomies.
* Added compressed assets.

2014-09-01 - version 2.6.7
* Fix notices when ordering again.
* Hooks for WPML.

2014-07-21 - version 2.6.6
* input multiplier - Set default value to avoid "This must be a number!".
* Added POT file.
* wc_format_decimal needs to be used on save.
* Correct display after saving global addon.

2014-06-30 - version 2.6.5
* Fixed notices when re-adding item to cart.

2014-06-09 - version 2.6.4
* Fixed undefined variable.
* Fixed frontend option with zero price.
* Fixed undefined variable when custom textarea used.

2014-05-29 - version 2.6.3
* Implemented wc_input_price field for addon costs
* Show addon prices inc/ex tax based on shop settings.
* Additional filters.

2014-05-21 - version 2.6.2
* Fix text domains

2014-05-02 - version 2.6.1
* Fix closing label tags

2014-04-22 - version 2.6.0
* Extra filters for wider plugin compatibility
* Bookings support
* Class refactor
* Impoved 'order again' code
* Updated textdomain
* Fix conflict with quick view

2014-03-21 - version 2.5.6
* Fix upload dir when "subdir" is not set.

2014-02-23 - version 2.5.5
* Fix cart button text for required addons in 2.1

2014-02-20 - version 2.5.4
* Styling fixes

2014-01-16 - version 2.5.3
* 2.1 compat

2013-12-06 - version 2.5.2
* Check for subscription product type for add to cart urls

2013-12-06 - version 2.5.1
* Increased add_to_cart_text hook priority so that it applies to subscriptions too

2013-12-02 - version 2.5.0
* Removed legacy support
* Order again - restore addons

2013-10-10 - version 2.4.5
* Allow zero value for custom text inputs

2013-10-10 - version 2.4.4
* Only set addons to array when not set already

2013-10-10 - version 2.4.3
* Added min attribute when min is 0

2013-10-10 - version 2.4.2
* Prevent negative multiplier

2013-10-10 - version 2.4.1
* get_product_addons filter

2013-09-16 - version 2.4.0
* New custom input multipler field type which multiples an input value by the price. Thanks Andrew Beeken.

2013-09-08 - version 2.3.0
* Exclude products from Global Addons option

2013-08-22 - version 2.2.0
* Various tweaks to support composite products

2013-07-31 - version 2.1.3
* Corrected product type checking
* Unique class per addon

2013-07-23 - version 2.1.2
* Better compatibility with quick view

2013-07-18 - version 2.1.0
* Allow HTML in the addon descriptions
* Improved sanitization of posted options

2013-06-28 - version 2.0.9
* Global addons - include_children false so sibling category addons are not found.

2013-06-27 - version 2.0.8
* Rename addon totals string

2013-06-07 - version 2.0.7
* Change event on page load to show totals if needed
* Currency converter compatibility

2013-06-07 - version 2.0.6
* Labels are optional
* Select first radio element by default

2013-06-07 - version 2.0.5
* Variable product support when variations all cost the same

2013-06-07 - version 2.0.4
* Variable product support

2013-06-03 - version 2.0.3
* Fix global import

2013-05-31 - version 2.0.2
* get_woocommerce_price_format fallback
* Stripslashes fix

2013-05-29 - version 2.0.1
* Fix escaping of user defined data

2013-02-01 - version 2.0.0
* Complete rewrite for WooCommerce 2.0 with new interface.
* Global forms which can be applied to any product.
* Custom price inputs.
* More hooks for extending the plugin.
* Template based overrides for fields.
* Dynamic total cost display
* Removed upload size filter for the benefit of WP MU
* When required, select box default is "Select an option" rather than "None"
* Add to cart button on archives links to product page for products with required add ons
* Removed colon for text fields when label is empty
* required-product-addon class on wrapper div for required fields
* Add option to provide id for product_addons function

2013-02-09 - version 1.2.0
* WC 2.0 Compat

2012-12-04 - version 1.1.1
* New updater

2012-01-26 - version 1.1
 * Required fields
 * Textarea field type
 * File upload field type
 * Import/export forms between products
 * Validation hook - woocommerce_validate_posted_addon_data

2012-01-26 - version 1.0.2
 * Small plugin header update
 * Strip tags from prices/meta

2011.12.1 - version 1.0.1
 * Woo Updater
 * Hook change

2011-11-17 - version 1.0
 * First Release
