Commit Graph

34 Commits

Author SHA1 Message Date
Rostislav Wolny
b8396140ac Remove paragraph renderer
[MAILPOET-5798]
2024-04-18 12:45:15 +02:00
Mike Jolley
3f2b96f3a6 Introduce block to handle email content 2024-04-10 11:42:50 +02:00
Mike Jolley
7325785e6b Add ID to emailPost 2024-04-10 11:42:50 +02:00
Mike Jolley
fa73d97ae9 Mock getEmailStyles 2024-04-10 11:42:50 +02:00
Mike Jolley
b4acac7c52 Refactor renderers to use templates 2024-04-10 11:42:50 +02:00
Jan Lysý
4c3f86e552 Update integration tests
[MAILPOET-5640]
2024-03-22 17:19:44 +01:00
Jan Lysý
2ea6bca7a3 Update renderer integration test
[MAILPOET-5640]
2024-03-15 16:57:41 +01:00
Rostislav Wolny
39aa76d4d0 Improve typehints and use typed properties in ContentRenderer and test
[MAILPOET-5798]
2024-03-15 10:28:48 +01:00
Rostislav Wolny
4071175178 Move ContentRenderer to the Renderer/ContentRenderer namespace
[MAILPOET-5798]
2024-03-15 10:28:48 +01:00
Rostislav Wolny
8f20b4bfa9 Simplify code in RendererTest using WP_HTML_Tag_Processor
[MAILPOET-5798]
2024-03-15 10:28:48 +01:00
Rostislav Wolny
8b09fd6183 Add basic integration test for ContentRenderer
[MAILPOET-5798]
2024-03-15 10:28:48 +01:00
Rostislav Wolny
2c5857e89b Split renderer into content renderer and renderer
Content renderer - renders the content of the email post
Renderer - places the content into the email HTML template and generates text version
[MAILPOET-5798]
2024-03-15 10:28:48 +01:00
Jan Lysý
db8dac03d2 Prepare styles in store for sidebar
[MAILPOET-5638]
2024-03-01 16:36:52 +01:00
Rostislav Wolny
b724ef4ac2 Extract Theme related methods from SettingsController as ThemeController
I want to avoid the SettingsController becoming some kind of a god class
so in this step, I extracted themejson-related stuff to an extra class.

In the future, we should also move methods for manipulating CSS to a helper.
[MAILPOET-5741]
2024-02-28 09:01:20 +01:00
Rostislav Wolny
4b55bb5bb3 Move default core/button styles configuration to integration
[MAILPOET-5814]
2024-01-23 16:47:48 +01:00
Rostislav Wolny
cd274c0738 Add basic style for buttons
Default background rendering has to be handled on the button renderer level
because of a specific markup for Outlook (bgcolor attribute). Default text color and paddings are
handled via CSS inlining. That's why they are tested in RendererTest

I used the same background color and font color as the one defined for the button
element in WP core theme.json, and I also used similar padding values
(In core they use "calc(0.667em + 2px) calc(1.333em + 2px)")
[MAILPOET-5814]
2024-01-23 16:47:48 +01:00
Rostislav Wolny
d62f3c1938 Render email main font family CSS rules in the content wrapper
[MAILPOET-5740]
2024-01-23 16:47:48 +01:00
Rostislav Wolny
b2c17fcdf4 Fix formatting and add return type hints to buttons related tests
[MAILPOET-5644]
2024-01-08 09:21:16 +01:00
Rostislav Wolny
c5ad2405aa Add Flex Renderer test
[MAILPOET-5644]
2024-01-08 09:21:16 +01:00
Oluwaseun Olorunsola
d05b38bf89 Fix failing test
MAILPOET-5643
2023-11-17 09:49:06 +01:00
Rostislav Wolny
219a12578a Simplify API for registering email block renderers
This commit makes the cleanup of filters for block rendering in emails automatic.
[MAILPOET-5645]
2023-11-10 08:44:08 +01:00
Jan Lysý
5644cab9e3 Refactor BlocksRegistry to pass dependencies as an argument
For better extensibility of 3rd party developers, I refactored to pass Settings Controller as an argument.
[MAILPOET-5591]
2023-11-09 09:06:33 +01:00
Jan Lysý
2ce6fd8688 Remove BlocksRenderer and fix tests
[MAILPOET-5591]
2023-11-09 09:06:33 +01:00
Jan Lysý
0ac72d43e6 Merge StylesController to SettingsController
[MAILPOET-5591]
2023-11-09 09:06:33 +01:00
Jan Lysý
41c0f1e9d8 Fix Renderer integration test
[MAILPOET-5591]
2023-11-09 09:06:33 +01:00
Rodrigo Primo
0d2f6e0776 Replace expect()->stringContainsString() with verify()->stringContainsString()
codeception/verify 2.1 removed support for expect()->stringContainsString() so we need
to replace it with verify()->stringContainsString().

[MAILPOET-5664]
2023-10-24 08:58:22 +03:00
Rodrigo Primo
709be1d541 Replace expect()->null() with verify()->null()
codeception/verify 2.1 removed support for expect()->null() so we need
to replace it with verify()->null().

[MAILPOET-5664]
2023-10-24 08:58:22 +03:00
Rodrigo Primo
afe378ba22 Replace expect()->equals() with verify()->equals()
codeception/verify 2.1 removed support for expect()->equals() so we need
to replace it with verify()->equals().

[MAILPOET-5664]
2023-10-24 08:58:22 +03:00
Rostislav Wolny
af32b36af2 Initialize editor hooks only if the new editor feature is active
[MAILPOET-5624]
2023-10-09 11:33:11 +02:00
Rostislav Wolny
398a313d54 Pass styles controller into block renders
When rendering blocks, we need to access global styles settings.
This will be done via the StylesController

[MAILPOET-5540]
2023-09-21 14:20:35 +02:00
Rostislav Wolny
fd96b4afad Add email background and width into StylesController and apply in redering
[MAILPOET-5540]
2023-09-21 14:20:35 +02:00
Rostislav Wolny
77eab47357 Refactor email styles from constant to service and move to core
I envision the StylesController as the source of information about
styles settings in both the editor and renderer.

We will add email styles settings and these will be accessed in PHP via this service.
[MAILPOET-5540]
2023-09-21 14:20:35 +02:00
Rostislav Wolny
367806a56b Add Renderer Test
[MAILPOET-5540]
2023-09-21 14:20:35 +02:00
Rostislav Wolny
a1869249e0 Add code handling block rendering
The idea is that anyone can register specialized renderers for
blocks.
The render will skip unknown blocks.
[MAILPOET-5540]
2023-09-21 14:20:35 +02:00