The previous method was relying on the idea that product pages would not
trigger the `the_content` filter since they don't have to render the
content. Testing revealed that this idea was unreliable.
In one instance WordPress was triggering `the_content` when attempting
to filter the excerpt, even though the excerpt was empty.
This changes the detection method to a much more direct inspection of
the post's content.
MAILPOET-5859
The current logic for form rendering assumes that a single product page
will trigger the filter `the_content`. This is not always true. In cases
where the product has no description, WooCommerce does not render the
description tab at all, which is where that filter usually fires (in my
testing).
This change ensures that we still give these forms a chance to render on
such pages.
MAILPOET-5859
This was causing common components were dependent on the automation store
and was causing subsequent issues when the original modal was used in the email editor.
[MAILPOET-5932]
This commit adds a method that returns map of CSS variables and their values defined based on the theme.json
It is a preparation step for a postprocessor that will use this map to replace variables with values in final HTML.
There are many clients that don't support CSS variables
[MAILPOET-5918]
Instead of using our own logic for building padding style definition,
we switch to wp_style_engine_get_styles which generates the styles definitions for us.
It also handles value variable formatting to valid CSS (var:preset|spacing|50 to var(--wp--preset--spacing--50)).
[MAILPOET-5918]
There seems to be an issue with useSetting. Simply having
`useSetting('welcome_wizard_current_step')` in App causes re-renders on
any state change. The effect was that you could only type one letter in
the input fields before the app would re-render and the field would lose
focus.
I tried and failed to figure out what was causing all the re-renders, so
for now I've settled on this workaround, since we only care about the
initial state of the setting anyway. That being said, this seems like
something we should investigate as it could be affecting other
components and causing lots of unnecessary re-renders.
MAILPOET-5216